Share via


Authentification des utilisateurs finaux auprès d’Azure Data Lake Storage Gen1 à l’aide de Python

Dans cet article, vous allez apprendre à utiliser le Kit de développement logiciel (SDK) Python pour authentifier les utilisateurs finaux auprès d’Azure Data Lake Storage Gen1. L’authentification des utilisateurs finals se subdivise en deux catégories :

  • Authentification des utilisateurs finals sans authentification multifacteur
  • Authentification des utilisateurs finals avec authentification multifacteur

Les deux options sont décrites dans cet article. Pour plus d’informations sur l’authentification de service à service auprès de Data Lake Storage Gen1 à l’aide de Python, consultez Authentification de service à service auprès de Data Lake Storage Gen1 à l’aide de Python.

Prérequis

Installer les modules

Pour utiliser Data Lake Storage Gen1 avec Python, vous devez installer trois modules.

Utilisez les commandes suivantes pour installer les modules.

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

Créer une application Python

  1. Utilisez l’IDE de votre choix et créez une application Python, par exemple, mysample.py.

  2. Ajoutez l’extrait de code suivant pour importer les modules requis

    ## 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. Enregistrez les modifications dans mysample.py.

Authentification des utilisateurs finals avec authentification multifacteur

Pour la gestion du compte

Utilisez l’extrait de code suivant pour vous authentifier auprès de Microsoft Entra ID pour les opérations de gestion de compte sur un compte Data Lake Storage Gen1. L’extrait de code suivant peut être utilisé pour authentifier votre application à l’aide de l’authentification multifacteur. Fournissez les valeurs ci-dessous pour une application native Microsoft Entra ID existante.

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)

Pour les opérations du système de fichiers

Utilisez cette option pour vous authentifier auprès de Microsoft Entra ID pour les opérations de système de fichiers sur un compte Data Lake Storage Gen1. L’extrait de code suivant peut être utilisé pour authentifier votre application à l’aide de l’authentification multifacteur. Fournissez les valeurs ci-dessous pour une application native Microsoft Entra ID existante.

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

Authentification des utilisateurs finals sans authentification multifacteur

Cette option est déconseillée. Pour plus d’informations, consultez la page Authentification Azure à l’aide du SDK Python.

Étapes suivantes

Dans cet article, vous avez appris à vous servir de l’authentification des utilisateurs finaux auprès d’Azure Data Lake Storage Gen1 avec Python. Vous pouvez maintenant consulter les articles suivants, qui expliquent comment utiliser Python pour travailler avec Azure Data Lake Storage Gen1.