Manajemen identitas dan akses untuk aplikasi Python di Azure

Di Azure, manajemen identitas dan akses (IAM) untuk aplikasi Python melibatkan dua konsep utama:

  • Autentikasi: Memverifikasi identitas pengguna, grup, layanan, atau aplikasi
  • Otorisasi: Menentukan tindakan apa yang diizinkan dilakukan identitas pada sumber daya Azure

Azure menyediakan beberapa opsi IAM agar sesuai dengan persyaratan keamanan aplikasi Anda. Artikel ini menyertakan tautan ke sumber daya penting untuk membantu Anda memulai.

Untuk mempelajari selengkapnya, lihat Rekomendasi untuk manajemen identitas dan akses.

Koneksi tanpa kata sandi

Jika memungkinkan, gunakan identitas terkelola untuk menyederhanakan manajemen identitas dan meningkatkan keamanan. Identitas terkelola mendukung autentikasi tanpa kata sandi, sehingga Anda tidak perlu menyematkan kredensial sensitif, seperti kata sandi atau rahasia klien, dalam variabel kode atau lingkungan. Azure layanan seperti App Service, Azure Functions, dan Azure Container Apps mendukung identitas terkelola. Dengan menggunakan identitas terkelola, aplikasi Anda dapat mengautentikasi ke layanan Azure tanpa mengelola kredensial.

Sumber daya berikut menunjukkan cara menggunakan Azure SDK untuk Python dengan autentikasi tanpa kata sandi melalui DefaultAzureCredential. DefaultAzureCredential sangat ideal untuk sebagian besar aplikasi yang berjalan di Azure, karena dengan mulus mendukung lingkungan pengembangan dan produksi lokal dengan merantai beberapa jenis kredensial dalam urutan yang aman dan cerdas.

Konektor Layanan

Banyak sumber daya Azure yang umum digunakan dalam aplikasi Python mendukung Konektor Layanan. Konektor Layanan menyederhanakan proses konfigurasi koneksi aman antara layanan Azure. Ini mengotomatiskan pengaturan autentikasi, akses jaringan, dan string koneksi antara layanan komputasi (seperti App Service atau Container Apps) dan layanan dependen (seperti Azure Storage, Azure SQL, atau Cosmos DB). Otomatisasi ini mengurangi langkah manual, membantu menerapkan praktik terbaik (seperti menggunakan identitas terkelola dan titik akhir privat), dan meningkatkan konsistensi dan keamanan penyebaran.

Key Vault

Menggunakan solusi manajemen kunci seperti Azure Key Vault memberi Anda kontrol yang lebih besar atas rahasia dan kredensial Anda, meskipun menambahkan kompleksitas manajemen.

Autentikasi dan identitas untuk memasukkan pengguna di aplikasi

Anda dapat mengembangkan aplikasi Python yang memungkinkan pengguna untuk masuk dengan identitas Microsoft, seperti akun Microsoft Entra ID, atau akun sosial eksternal, seperti Google atau Facebook. Setelah diautentikasi, aplikasi Anda dapat mengotorisasi pengguna untuk mengakses API atau API Microsoft sendiri, seperti Microsoft Graph, untuk berinteraksi dengan sumber daya seperti profil pengguna, kalender, dan email.