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
Python. Anda dapat mengunduh versi Python dari sini. Artikel ini menggunakan Python 3.6.2.
Langganan Azure. Lihat Dapatkan uji coba gratis Azure.
Buat Aplikasi "Web" Microsoft Entra ID. Anda harus telah menyelesaikan langkah-langkah dalam autentikasi Layanan ke layanan dengan Data Lake Storage Gen1 menggunakan Microsoft Entra ID.
Memasang modul
Untuk bekerja dengan Data Lake Storage Gen1 menggunakan Python, Anda perlu memasang tiga modul.
- Modul
azure-mgmt-resource
, yang mencakup modul Azure untuk Direktori Aktif, dll. - Modul
azure-mgmt-datalake-store
, yang mencakup operasi manajemen akun Azure Data Lake Storage Gen1. Untuk informasi selengkapnya tentang modul ini, lihat Referensi modul Manajemen Azure Data Lake Storage Gen1. - Modul
azure-datalake-store
, yang mencakup operasi filesystem Azure Data Lake Storage Gen1. Untuk informasi selengkapnya tentang modul ini, lihat Referensi modul Filesystem azure-datalake-store.
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
Di IDE pilihan Anda, buat aplikasi Python baru, misalnya, mysample.py.
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
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.