Authentifizierung von Endbenutzern bei Azure Data Lake Storage Gen1 mit Python

In diesem Artikel erfahren Sie, wie Sie mithilfe des Python SDK die Authentifizierung von Endbenutzern bei Azure Data Lake Storage Gen1 durchführen. Endbenutzerauthentifizierung kann weiter in zwei Kategorien unterteilt werden:

  • Endbenutzerauthentifizierung ohne mehrstufige Authentifizierung
  • Endbenutzerauthentifizierung mit mehrstufiger Authentifizierung

Beide Optionen werden in diesem Artikel erläutert. Informationen zur Dienst-zu-Dienst-Authentifizierung bei Data Lake Storage Gen1 mithilfe von Python finden Sie unter Dienst-zu-Dienst-Authentifizierung bei Azure Data Lake Storage Gen1 mit Python.

Voraussetzungen

Installieren der Module

Zum Verwenden von Data Lake Storage Gen1 mit Python müssen Sie drei Module installieren.

Verwenden Sie die folgenden Befehle, um die Module zu installieren:

pip install azure-mgmt-resource
pip install azure-mgmt-datalake-store
pip install azure-datalake-store

Erstellen einer neuen Python-Anwendung

  1. Erstellen Sie in der IDE Ihrer Wahl eine neue Python-Anwendung, z. B. mysample.py.

  2. Fügen Sie den folgenden Codeausschnitt hinzu, um die erforderlichen Module zu importieren:

    ## Use this for Azure AD authentication
    from msrestazure.azure_active_directory import AADTokenCredentials
    
    ## Required for Azure Data Lake Storage Gen1 account management
    from azure.mgmt.datalake.store import DataLakeStoreAccountManagementClient
    from azure.mgmt.datalake.store.models import DataLakeStoreAccount
    
    ## Required for Azure Data Lake Storage Gen1 filesystem management
    from azure.datalake.store import core, lib, multithread
    
     # Common Azure imports
     import adal
     from azure.mgmt.resource.resources import ResourceManagementClient
     from azure.mgmt.resource.resources.models import ResourceGroup
    
     ## Use these as needed for your application
     import logging, pprint, uuid, time
    
  3. Speichern Sie die Änderungen in mysample.py.

Endbenutzerauthentifizierung mit mehrstufiger Authentifizierung

Für die Kontenverwaltung

Verwenden Sie den folgenden Codeausschnitt, um sich bei Microsoft Entra ID für Kontoverwaltungsvorgänge in einem Data Lake Storage Gen1-Konto zu authentifizieren. Sie können den folgenden Codeausschnitt verwenden, um Ihre Anwendung per Multi-Factor Authentication zu authentifizieren. Geben Sie die folgenden Werte für eine vorhandene Microsoft Entra ID native Anwendung an.

authority_host_url = "https://login.microsoftonline.com"
tenant = "FILL-IN-HERE"
authority_url = authority_host_url + '/' + tenant
client_id = 'FILL-IN-HERE'
redirect = 'urn:ietf:wg:oauth:2.0:oob'
RESOURCE = 'https://management.core.windows.net/'

context = adal.AuthenticationContext(authority_url)
code = context.acquire_user_code(RESOURCE, client_id)
print(code['message'])
mgmt_token = context.acquire_token_with_device_code(RESOURCE, code, client_id)
armCreds = AADTokenCredentials(mgmt_token, client_id, resource = RESOURCE)

Für Dateisystemvorgänge

Verwenden Sie dies, um sich bei Microsoft Entra ID für Dateisystemvorgänge in einem Data Lake Storage Gen1-Konto zu authentifizieren. Sie können den folgenden Codeausschnitt verwenden, um Ihre Anwendung per Multi-Factor Authentication zu authentifizieren. Geben Sie die folgenden Werte für eine vorhandene Microsoft Entra ID native Anwendung an.

adlCreds = lib.auth(tenant_id='FILL-IN-HERE', resource = 'https://datalake.azure.net/')

Endbenutzerauthentifizierung ohne mehrstufige Authentifizierung

Dies ist veraltet. Weitere Informationen finden Sie unter Authentifizieren mit Tokenanmeldeinformationen.

Nächste Schritte

In diesem Artikel haben Sie erfahren, wie Sie die Authentifizierung von Endbenutzern verwenden, um sich mithilfe von Python bei Azure Data Lake Storage Gen1 zu authentifizieren. In den folgenden Artikeln wird erörtert, wie Sie Python mit Azure Data Lake Storage Gen1 verwenden.