Áno, môžete použiť spravovanú identitu na prístup k Azure Key Vault z funkčnej aplikácie. Takto to funguje:
1. Povoľte spravovanú identitu v aplikácii Funkcia: Prejdite do svojej aplikácie Azure Function App, prejdite do časti Nastavenia, kliknite na identitu a zapnite spravovanú identitu priradenej systému. Uložte zmeny [1] [4].
2. Priraďte povolenia k trezoru Key: Prejdite do trezoru Azure Key, prejdite na ovládací prvok Access Control (IAM) a pridajte priradenie rolí. Vyberte rolu používateľa Key Vault Secrets a priraďte ju spravovanej identite vašej funkčnej aplikácie [4] [7].
3. Prístup Key Vault Secrets: Vo svojej funkčnej aplikácii môžete teraz odkazovať na tajomstvá z Key Vault pomocou spravovanej identity. Zvyčajne sa to robí konfiguráciou tajných odkazov v nastaveniach konfigurácie vašej funkčnej aplikácie [1] [5].
Používanie spravovanej identity poskytuje bezpečný spôsob prístupu k kľúčovým Vaultom bez toho, aby ste museli ukladať poverenia do svojho kódu aplikácie. Umožňuje funkčnej aplikácii pôsobiť ako persona s povoleniami na prístup k iným zdrojom Azure, ako je napríklad Key Vault [6].
Existujú dva typy spravovaných identity: systém pridelený na systém a pridelený používateľmi. Identity pridelené systémom sú spojené s životným cyklom funkčnej aplikácie, zatiaľ čo identity pridelené používateľom sú samostatné zdroje, ktoré sa môžu použiť vo viacerých aplikáciách [3] [7]. Oba typy sa dajú použiť na prístup k kľúčovým trezorom, ale identity pridelené používateľom vyžadujú ďalšiu konfiguráciu na určenie, ktorá identita sa má použiť [5].
Citácie:
[1] https://nanddeepn.github.io/posts/2023-06-25-ad-key-vault-secret-from-function-mi/
[2] https://www.reddit.com/r/azure/comments/1cumd51/how_do_i_get_access_to_key_vault_via_managed/
[3] https://www.red-gate.com/simple-talk/cloud/azure/azure-function-and-user-assigned-managed-identities/
[4] https://www.appgovscore.com/blog/connect-to-microsoft-graph-api-securely-function-App-app-App-Azure-key-vault
[5] https://stackoverflow.com/questions/76439670/Azure-function-app-setting-from-key-ake-vault-accessible-with-system-assigned-identi
[6] https://docs.azure.cn/en-us/azure-functions/functions-identity založené na-connections-tutorial
[7] https://learn.microsoft.com/en-us/azure/frontdoor/managed-identity
[8] https://stackoverflow.com/questions/79293711/azure-function-app-using-key-vault-with-managed-identity-identity-not --thoreized