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
Python Pour télécharger Python, accédez ici. Cet article utilise Python 3.6.2.
Un abonnement Azure. Consultez la page Obtention d’un essai gratuit d’Azure.
Créez une application Microsoft Entra ID « native ». Vous devez avoir effectué les étapes décrites dans Authentification de l’utilisateur final avec Data Lake Storage Gen1 à l’aide de Microsoft Entra ID.
Installer les modules
Pour utiliser Data Lake Storage Gen1 avec Python, vous devez installer trois modules.
- Le module
azure-mgmt-resource
, qui inclut des modules Azure pour Active Directory, etc. - Le module
azure-mgmt-datalake-store
, qui inclut les opérations de gestion du compte Azure Data Lake Storage Gen1. Pour plus d’informations sur ce module, consultez les informations de référence sur les modules de gestion Azure Data Lake Storage Gen1. - Le module
azure-datalake-store
, qui inclut les opérations de gestion du système de fichiers Azure Data Lake Storage Gen1. Pour plus d’informations sur ce module, consultez les informations de référence sur les modules du système de fichiers azure-datalake-store.
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
Utilisez l’IDE de votre choix et créez une application Python, par exemple,
mysample.py
.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
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.