Freigeben über


ServicePrincipalAuthentication Klasse

Verwalten der Authentifizierung mithilfe eines Dienstprinzipals anstelle einer Benutzeridentität.

Die Authentifizierung mit einem Dienstprinzipal eignet sich für automatisierte Workflows, z. B. für Continuous Integration und Continuous Delivery (CI/CD)-Szenarien. Dieser Authentifizierungstyp entkoppelt den Authentifizierungsprozess von jeglicher spezifischer Benutzeranmeldung und ermöglicht eine verwaltete Zugriffssteuerung.

Class ServicePrincipalAuthentication-Konstruktor.

Vererbung
ServicePrincipalAuthentication

Konstruktor

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

Parameter

Name Beschreibung
tenant_id
Erforderlich
str

Der Active Directory-Mandant, zu dem die Dienstidentität gehört.

service_principal_id
Erforderlich
str

Die Dienstprinzipal-ID.

service_principal_password
Erforderlich
str

Das Kennwort/der Schlüssel des Dienstprinzipals.

cloud
str

Der Name der Ziel-Cloud. Mögliche Werte: „AzureCloud“, „AzureChinaCloud“ und „AzureUSGovernment“. Ohne Cloudangabe wird „AzureCloud“ verwendet.

Standardwert: AzureCloud
tenant_id
Erforderlich
str

Der Active Directory-Mandant, zu dem die Dienstidentität gehört.

service_principal_id
Erforderlich
str

Die Dienstprinzipal-ID.

service_principal_password
Erforderlich
str

Das Kennwort/der Schlüssel des Dienstprinzipals.

cloud
Erforderlich
str

Der Name der Ziel-Cloud. Mögliche Werte: „AzureCloud“, „AzureChinaCloud“ und „AzureUSGovernment“. Ohne Cloudangabe wird „AzureCloud“ verwendet.

_enable_caching
Standardwert: True

Hinweise

Für die Dienstprinzipalauthentifizierung muss eine App-Registrierung in Azure Active Directory erstellt werden. Sie generieren zunächst einen geheimen Clientschlüssel und gewähren dem Dienstprinzipal anschließend Rollenzugriff auf Ihren Machine Learning-Arbeitsbereich. Anschließend verwenden Sie die ServicePrincipalAuthentication-Klasse, um den Authentifizierungsflow zu verwalten.


   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))

Das vollständige Beispiel finden Sie unter https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb.

Informationen zum Erstellen eines Dienstprinzipals und zum Zulassen des Zugriffs auf einen Machine Learning-Arbeitsbereich durch den Dienstprinzipal finden Sie unter Einrichten der Dienstprinzipalauthentifizierung.