Partilhar via


Autenticação do utilizador final com Azure Data Lake Storage Gen1 com Python

Neste artigo, irá aprender a utilizar o SDK python para efetuar a autenticação do utilizador final com Azure Data Lake Storage Gen1. A autenticação do utilizador final pode ser dividida em duas categorias:

  • Autenticação do utilizador final sem autenticação multifator
  • Autenticação do utilizador final com autenticação multifator

Ambas as opções são abordadas neste artigo. Para autenticação serviço a serviço com Data Lake Storage Gen1 com Python, veja Autenticação serviço a serviço com Data Lake Storage Gen1 com Python.

Pré-requisitos

Instalar os módulos

Para trabalhar com Data Lake Storage Gen1 com o Python, tem de instalar três módulos.

Utilize os comandos seguintes para instalar os módulos.

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

Criar uma aplicação Python nova

  1. No IDE à sua escolha, crie uma nova aplicação Python, por exemplo, mysample.py.

  2. Adicione o fragmento de código seguinte para importar os módulos necessários

    ## 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. Guardar alterações em mysample.py.

Autenticação do utilizador final com autenticação multifator

Para gestão de contas

Utilize o fragmento seguinte para autenticar com Microsoft Entra ID para operações de gestão de contas numa conta Data Lake Storage Gen1. O fragmento seguinte pode ser utilizado para autenticar a sua aplicação com a autenticação multifator. Indique os valores abaixo para uma aplicação nativa 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 operações do sistema de ficheiros

Utilize esta opção para autenticar com Microsoft Entra ID para operações de sistema de ficheiros numa conta Data Lake Storage Gen1. O fragmento seguinte pode ser utilizado para autenticar a sua aplicação com a autenticação multifator. Indique os valores abaixo para uma aplicação nativa Microsoft Entra ID existente.

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

Autenticação do utilizador final sem autenticação multifator

Isto foi preterido. Para obter mais informações, veja Autenticação do Azure com o SDK Python.

Passos seguintes

Neste artigo, aprendeu a utilizar a autenticação do utilizador final para se autenticar com o Azure Data Lake Storage Gen1 com Python. Agora, pode ver os seguintes artigos que falam sobre como utilizar o Python para trabalhar com Azure Data Lake Storage Gen1.