Autenticación de usuario final con Azure Data Lake Storage Gen1 mediante el uso de Python

En este artículo, aprenderá a usar el SDK de Python para realizar la autenticación de usuario final con Azure Data Lake Storage Gen1. La autenticación del usuario final se puede dividir en dos categorías:

  • Autenticación de usuario final sin autenticación multifactor
  • Autenticación de usuario final con autenticación multifactor

Ambas opciones se describen en este artículo. Para la autenticación entre servicios con Data Lake Storage Gen1. mediante Python, consulte Service-to-service authentication with Data Lake Storage Gen1 using Java (Autenticación entre servicios con Data Lake Storage Gen1 mediante Python).

Prerrequisitos

Instalación de los módulos

Para trabajar con Data Lake Storage Gen1 mediante Python, debe instalar tres módulos.

Utilice el comando siguiente para instalar los módulos.

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

Creación de una nueva aplicación de Python

  1. En el IDE que prefiera, cree una nueva aplicación de Python, por ejemplo, mysample.py.

  2. Agregue el fragmento de código siguiente para importar los módulos necesarios

    ## 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. Guarde los cambios realizados en mysample.py.

Autenticación de usuario final con autenticación multifactor

Para la administración de cuentas

Use el siguiente fragmento de código para autenticarse con Microsoft Entra ID para las operaciones de administración de cuentas en una cuenta de Data Lake Storage Gen1. El siguiente fragmento de código se puede utilizar para autenticar una aplicación mediante Multi-Factor Authentication. Proporcione los valores siguientes para una aplicación nativa de Microsoft Entra ID existente.

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)

Para operaciones del sistema de archivos

Úselo para autenticarse con Microsoft Entra ID para las operaciones del sistema de archivos en una cuenta de Data Lake Storage Gen1. El siguiente fragmento de código se puede utilizar para autenticar una aplicación mediante Multi-Factor Authentication. Proporcione los valores siguientes para una aplicación nativa de Microsoft Entra ID existente.

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

Autenticación de usuario final sin autenticación multifactor

Esto está en desuso. Para más información, consulte Autenticación de Azure mediante el SDK de Python.

Pasos siguientes

En este artículo, ha aprendido a usar la autenticación de usuario final para autenticarse en Azure Data Lake Storage Gen1 mediante Python. Ahora puede consultar los siguientes artículos, que tratan sobre cómo usar Python con Azure Data Lake Storage Gen1.