Bagikan melalui


Autentikasi antar layanan dengan Data Lake Storage Gen1 menggunakan Python

Dalam artikel ini, Anda akan mempelajari tentang cara menggunakan SDK Python untuk melakukan autentikasi antar layanan dengan Azure Data Lake Storage Gen1. Untuk autentikasi pengguna dengan Data Lake Storage Gen1 menggunakan Python, lihat Autentikasi pengguna akhir dengan Data Lake Storage Gen1 menggunakan Python.

Prasyarat

Memasang modul

Untuk bekerja dengan Data Lake Storage Gen1 menggunakan Python, Anda perlu memasang tiga modul.

Gunakan perintah berikut untuk memasang modul.

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

Membuat aplikasi Python baru

  1. Di IDE pilihan Anda, buat aplikasi Python baru, misalnya, mysample.py.

  2. Tambahkan cuplikan berikut untuk mengimpor modul yang diperlukan:

    ## Use this for Azure AD authentication
    from msrestazure.azure_active_directory import AADTokenCredentials
    
    ## Required for Data Lake Storage Gen1 account management
    from azure.mgmt.datalake.store import DataLakeStoreAccountManagementClient
    from azure.mgmt.datalake.store.models import DataLakeStoreAccount
    
    ## Required for 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, getpass, pprint, uuid, time
    
  3. Simpan perubahan ke mysample.py.

Autentikasi antar layanan dengan rahasia klien untuk manajemen akun

Gunakan cuplikan ini untuk mengautentikasi dengan Microsoft Entra ID untuk operasi manajemen akun di Data Lake Storage Gen1 seperti membuat akun Data Lake Storage Gen1, menghapus Data Lake Storage Gen1 akun, dll. Cuplikan berikut dapat digunakan untuk mengautentikasi aplikasi Anda secara non-interaktif, menggunakan rahasia klien untuk aplikasi/perwakilan layanan dari aplikasi "Web App" Microsoft Entra ID yang ada.

authority_host_uri = 'https://login.microsoftonline.com'
tenant = '<TENANT>'
authority_uri = authority_host_uri + '/' + tenant
RESOURCE = 'https://management.core.windows.net/'
client_id = '<CLIENT_ID>'
client_secret = '<CLIENT_SECRET>'

context = adal.AuthenticationContext(authority_uri, api_version=None)
mgmt_token = context.acquire_token_with_client_credentials(RESOURCE, client_id, client_secret)
armCreds = AADTokenCredentials(mgmt_token, client_id, resource=RESOURCE)

Autentikasi antar layanan dengan rahasia klien untuk operasi filesystem

Gunakan cuplikan berikut untuk mengautentikasi dengan Microsoft Entra ID untuk operasi sistem file pada Data Lake Storage Gen1 seperti membuat folder, mengunggah file, dll. Cuplikan berikut dapat digunakan untuk mengautentikasi aplikasi Anda secara non-interaktif, menggunakan rahasia klien untuk aplikasi/perwakilan layanan. Gunakan ini dengan aplikasi "Web App" Microsoft Entra ID yang ada.

tenant = '<TENANT>'
RESOURCE = 'https://datalake.azure.net/'
client_id = '<CLIENT_ID>'
client_secret = '<CLIENT_SECRET>'

adlCreds = lib.auth(tenant_id = tenant,
                client_secret = client_secret,
                client_id = client_id,
                resource = RESOURCE)

Langkah berikutnya

Dalam artikel ini, Anda telah mempelajari cara menggunakan autentikasi antar layanan untuk mengautentikasikan dengan Azure Data Lake Storage Gen1 menggunakan Python. Sekarang Anda dapat melihat artikel berikut yang membahas tentang cara menggunakan Python untuk menggunakan Data Lake Storage Gen1.