Compartilhar via


ServicePrincipalAuthentication Classe

Gerencia a autenticação usando uma entidade de serviço em vez de uma identidade de usuário.

A autenticação por entidade de serviço é adequada para fluxos de trabalho automatizados, como em cenários de CI/CD. Esse tipo de autenticação desassocia o processo de autenticação de qualquer logon de usuário específico e permite o controle de acesso gerenciado.

Construtor de classe ServicePrincipalAuthentication.

Herança
ServicePrincipalAuthentication

Construtor

ServicePrincipalAuthentication(tenant_id, service_principal_id, service_principal_password, cloud='AzureCloud', _enable_caching=True)

Parâmetros

Nome Description
tenant_id
Obrigatório
str

O locatário do Active Directory ao qual a identidade do serviço pertence.

service_principal_id
Obrigatório
str

A ID da entidade de serviço.

service_principal_password
Obrigatório
str

A senha/chave da entidade de serviço.

cloud
str

O nome da nuvem de destino. Pode ser "AzureCloud", "AzureChinaCloud" ou "AzureUSGovernment". Se nenhuma nuvem for especificada, "AzureCloud" será usado.

Valor padrão: AzureCloud
tenant_id
Obrigatório
str

O locatário do Active Directory ao qual a identidade do serviço pertence.

service_principal_id
Obrigatório
str

A ID da entidade de serviço.

service_principal_password
Obrigatório
str

A senha/chave da entidade de serviço.

cloud
Obrigatório
str

O nome da nuvem de destino. Pode ser "AzureCloud", "AzureChinaCloud" ou "AzureUSGovernment". Se nenhuma nuvem for especificada, "AzureCloud" será usado.

_enable_caching
Valor padrão: True

Comentários

A autenticação de entidade de serviço envolve a criação de um Registro de Aplicativo no Azure Active Directory. Primeiro, gere um segredo do cliente e, em seguida, conceda à sua entidade de serviço acesso de função ao Workspace do Machine Learning. Em seguida, você usa a classe ServicePrincipalAuthentication para gerenciar seu fluxo de autenticação.


   import os
   from azureml.core.authentication import ServicePrincipalAuthentication

   svc_pr_password = os.environ.get("AZUREML_PASSWORD")

   svc_pr = ServicePrincipalAuthentication(
       tenant_id="my-tenant-id",
       service_principal_id="my-application-id",
       service_principal_password=svc_pr_password)


   ws = Workspace(
       subscription_id="my-subscription-id",
       resource_group="my-ml-rg",
       workspace_name="my-ml-workspace",
       auth=svc_pr
       )

   print("Found workspace {} at location {}".format(ws.name, ws.location))

O exemplo completo está disponível em https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb

Para saber mais sobre como criar uma entidade de serviço e permitir que a entidade de serviço acesse um workspace do Machine Learning, consulte Configurar a autenticação da entidade de serviço.