ServicePrincipalAuthentication Klass
Hanterar autentisering med hjälp av en tjänstprincip i stället för en användaridentitet.
Autentisering med tjänstens huvudnamn är lämplig för automatiserade arbetsflöden som för CI/CD-scenarier. Den här typen av autentisering frikopplar autentiseringsprocessen från en specifik användarinloggning och tillåter hanterad åtkomstkontroll.
Konstruktor för klass ServicePrincipalAuthentication.
- Arv
-
ServicePrincipalAuthentication
Konstruktor
ServicePrincipalAuthentication(tenant_id, service_principal_id, service_principal_password, cloud='AzureCloud', _enable_caching=True)
Parametrar
Name | Description |
---|---|
tenant_id
Obligatorisk
|
Den active directory-klientorganisation som tjänstidentiteten tillhör. |
service_principal_id
Obligatorisk
|
Tjänstens huvudnamns-ID. |
service_principal_password
Obligatorisk
|
Lösenordet/nyckeln för tjänstens huvudnamn. |
cloud
|
Namnet på målmolnet. Kan vara en av "AzureCloud", "AzureChinaCloud" eller "AzureUSGovernment". Om inget moln anges används "AzureCloud". Standardvärde: AzureCloud
|
tenant_id
Obligatorisk
|
Den active directory-klientorganisation som tjänstidentiteten tillhör. |
service_principal_id
Obligatorisk
|
Tjänstens huvudnamns-ID. |
service_principal_password
Obligatorisk
|
Lösenordet/nyckeln för tjänstens huvudnamn. |
cloud
Obligatorisk
|
Namnet på målmolnet. Kan vara en av "AzureCloud", "AzureChinaCloud" eller "AzureUSGovernment". Om inget moln anges används "AzureCloud". |
_enable_caching
|
Standardvärde: True
|
Kommentarer
Autentisering med tjänstens huvudnamn innebär att skapa en appregistrering i Azure Active Directory. Först genererar du en klienthemlighet och sedan ger du tjänstens huvudnamn åtkomst till din maskininlärningsarbetsyta. Sedan använder du klassen ServicePrincipalAuthentication för att hantera ditt autentiseringsflöde.
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))
Fullständigt exempel är tillgängligt från https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb
Mer information om hur du skapar ett huvudnamn för tjänsten och tillåter att tjänstens huvudnamn får åtkomst till en maskininlärningsarbetsyta finns i Konfigurera autentisering av tjänstens huvudnamn.