Konfiguriranje upravljane identitete za funkcije Azure vključuje uporabo bodisi dodeljene sistemske identitete ali uporabniku dodeljene upravljane identitete. Tukaj lahko nastavite obe vrsti:
Omogočanje sistema dodeljene upravljane identitete
1. Pomaknite se do portala Azure: Pojdite v aplikacijo Azure Funkcija na portalu Azure.
2. Izberite Možnost identitete: V levem meniju izberite Nastavitve in nato kliknite Identity.
3. Omogoči sistem dodeljena identiteta: Na zavihku dodeljeni sistem preklopite stanje na vklop in kliknite Shrani. To ustvarja upravljano identiteto z istim imenom kot vaša aplikacija za funkcijo.
4. Dodelite dovoljenja: Pomaknite se do vira (npr. Azure Storage ali SQL baza podatkov) Želite dostop do vaše funkcije. Dodelite ustrezne vloge upravljani identiteti tako, da se odpravite na nadzor dostopa (IAM), nato dodelitve vlog in dodate upravljano identiteto potrebnim vlogam [1] [3] [7].
Omogočanje dodeljene identitete uporabnika
1. Ustvari uporabniško dodeljeno identiteto: Najprej ustvarite uporabniško dodeljeni vir, ki ga upravlja uporabnik, v Azure. Ta identiteta se lahko uporablja v več virih.
2. Dodelite aplikacijo za funkcijo: V portalu Azure se pomaknite do nastavitev identitete vaše funkcije. Preklopite na uporabniški zavihek in kliknite Dodaj. Poiščite in izberite uporabniško dodeljeno identiteto, ki ste jo ustvarili [1] [6].
3. Konfigurirajte nastavitve aplikacije: Za nekatere storitve, kot je ključ Vault, boste morda morali nastaviti dodatne lastnosti (npr. "KeyVaultreferenceIdentity`) prek klicev REST API, saj te nastavitve niso na voljo v UI [1].
4. dodelite dovoljenja: Podobno kot sistemske identitete, dodeljene potrebne vloge uporabniku, dodeljene identiteti za ciljne vire [6].
Uporaba upravljane identitete v kodi
Ko uporabljate upravljane identitete, lahko vaše funkcije Azure uporabijo knjižnice, kot je "Azure.Identity", da preverite pristnost s storitvami Azure, ne da bi neposredno ravnali s skrivnostmi. Na primer, za povezavo z Azure Storage ali SQL bazo podatkov lahko na primer uporabite `DefaultAZureCredential" [5] [9].
Prednosti upravljanih identitet
- Varnost: Izogiba se potrebi po shranjevanju skrivnosti v kodi ali konfiguracijskih datotekah.
- Prilagodljivost: omogoča enostavno upravljanje dovoljenj za dostop prek Azure RBAC.
-razširljivost: za različne scenarije podpira sistemsko in uporabniško dodeljene identitete [4] [6].
Navedbe:
[1] https://www.red-gate.com/simple-talk/cloud/azure/azure-function-and-user-assigned-managed-identes/
[2] https://codebankblog.wordpress.com/2020/06/27/azure-function-with-managed-identy-and-azure-sql-db/
[3] https://kumarashwinhubert.com/secure-your-azure-functions-use-managed-identy-for-azurewebjobSstorage
[4] https://docs.azure.cn/sl-us/azure-functions/functions-identity-based-connections-tutorial
[5] https://www.linkedin.com/pulse/how-use-managed-identity-app-service-azure-ali-khan-
[6] https://learn.microsoft.com/en-us/azure/app-service/overview-managed-identy
[7] https://docs.azure.cn/en-us/azure-functions/functions-identy-access-azure-sql-with-managed-identy
[8] https://learn.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-configure-managed-identy
[9] https://www.transparty.com/app-innovation/azure-functions-with-managed-identity-storage-access/