to be created and a client secret to be generated.The following assumes an Azure service principal was configured with a client secret and has permissions to access an Azure blob storage container, an AKS Kubernetes cluster and an ACR container registry. The service principal client ID, tenant ID and client secret are then used to configure the Azure Service Connector.

zenml service-connector register azure-service-principal --type azure --auth-method service-principal --tenant_id=a79f3633-8f45-4a74-a42e-68871c17b7fb --client_id=8926254a-8c3f-430a-a2fd-bdab234d491e --client_secret=AzureSuperSecret

Example Command Output

⠙ Registering service connector 'azure-service-principal'...

Successfully registered service connector `azure-service-principal` with access to the following resources:

┏━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓

┃     RESOURCE TYPE     │ RESOURCE NAMES                                ┃

┠───────────────────────┼───────────────────────────────────────────────┨

┃   🇦 azure-generic    │ ZenML Subscription                            ┃

┠───────────────────────┼───────────────────────────────────────────────┨

┃   📦 blob-container   │ az://demo-zenmlartifactstore                  ┃

┠───────────────────────┼───────────────────────────────────────────────┨

┃ 🌀 kubernetes-cluster │ demo-zenml-demos/demo-zenml-terraform-cluster ┃

┠───────────────────────┼───────────────────────────────────────────────┨

┃  🐳 docker-registry   │ demozenmlcontainerregistry.azurecr.io         ┃

┗━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

The Service Connector configuration shows that the connector is configured with service principal credentials:

zenml service-connector describe azure-service-principal

Example Command Output

┏━━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓

┃ PROPERTY         │ VALUE                                                                          ┃