Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Ez a cikk bemutatja, hogyan hozhat létre felügyelt identitást az Azure App Service-hez és az Azure Functions-alkalmazásokhoz, és hogyan használhatja azt más erőforrások eléréséhez.
A Microsoft Entra-azonosítóból származó felügyelt identitás lehetővé teszi, hogy az alkalmazás egyszerűen hozzáférjen más, Microsoft Entra által védett erőforrásokhoz, például az Azure Key Vaulthoz. Az Azure-platform kezeli az identitást, így nem kell titkos kulcsokat kiépítenie vagy elforgatnia. A Microsoft Entra ID-ban található felügyelt identitásokról további információt az Azure-erőforrások felügyelt identitásai című témakörben talál.
Kétféle identitást adhat az alkalmazásnak:
- A rendszer által hozzárendelt identitás az alkalmazáshoz van kötve, és az alkalmazás törlésekor törlődik. Egy alkalmazás csak egy rendszer által hozzárendelt identitással rendelkezhet.
- A felhasználó által hozzárendelt identitás különálló Azure-erőforrás, amely hozzárendelhető az alkalmazáshoz. Egy alkalmazás több felhasználó által hozzárendelt identitással is rendelkezhet. Egy felhasználó által hozzárendelt identitás több Azure-erőforráshoz, például két App Service-alkalmazáshoz is hozzárendelhető.
A felügyelt identitás konfigurációja a helyhez tartozik. Ha egy felügyelt identitást szeretne konfigurálni egy üzembehelyezési réshez a portálon, először nyissa meg a rést. Ha meg szeretné keresni a webalkalmazás vagy üzembehelyezési pont felügyelt identitását a Microsoft Entra-bérlőben az Azure Portalon, keresse meg közvetlenül a bérlő Áttekintés lapján.
Megjegyzés:
A felügyelt identitások nem érhetők el az Azure Arcban üzembe helyezett alkalmazásokhoz.
Mivel a felügyelt identitások nem támogatják a címtárközi forgatókönyveket, nem a várt módon viselkednek, ha az alkalmazást előfizetések vagy bérlők között migrálják. A felügyelt identitások ilyen áthelyezés utáni újbóli létrehozásához lásd: Automatikusan létrejönnek-e a felügyelt identitások, ha egy előfizetést áthelyezek egy másik könyvtárba? Az alsóbb rétegbeli erőforrásoknak is frissíteniük kell a hozzáférési szabályzatokat az új identitás használatához.
Előfeltételek
A cikkben ismertetett lépések végrehajtásához rendelkeznie kell az Azure-erőforrásokra vonatkozó minimális engedélykészlettel. A szükséges engedélyek a forgatókönyvtől függően változnak. Az alábbi táblázat a leggyakoribb forgatókönyveket foglalja össze:
| Forgatókönyv | Szükséges engedély | Példa beépített szerepkörökre |
|---|---|---|
| Rendszer által hozzárendelt identitás létrehozása |
Microsoft.Web/sites/write az alkalmazás felett vagy Microsoft.Web/sites/slots/write a slot felett |
Webhely közreműködője |
| Felhasználó által hozzárendelt identitás létrehozása |
Microsoft.ManagedIdentity/userAssignedIdentities/write azon erőforráscsoport felett, amelyben az identitást létre szeretné hozni |
Felügyelt identitások közreműködője |
| Felhasználó által hozzárendelt identitás hozzárendelése az alkalmazáshoz |
Microsoft.Web/sites/write az alkalmazáson keresztül, Microsoft.Web/sites/slots/write a nyílás fölött, vagy Microsoft.ManagedIdentity/userAssignedIdentities/*/assign/action az identitás felett |
Webhely közreműködője és felügyelt identitáskezelője |
| Azure-szerepkör-hozzárendelések létrehozása |
Microsoft.Authorization/roleAssignments/write a célerőforrás hatókörén kívül |
Szerepköralapú hozzáférés-vezérlési rendszergazda vagy felhasználói hozzáférés-rendszergazda |
Rendszer által hozzárendelt identitás hozzáadása
A rendszer által hozzárendelt felügyelt identitás engedélyezéséhez kövesse az alábbi utasításokat.
Az Azure Portalon nyissa meg az alkalmazás lapját.
A bal oldali menüben válassza a Beállítások>identitása lehetőséget.
A Rendszer által hozzárendelt lapon állítsa az ÁllapototBekapcsolt állapotra. Ezután válassza a Mentés lehetőséget.
Felhasználó által hozzárendelt identitás hozzáadása
Ha felhasználó által hozzárendelt identitással rendelkező alkalmazást szeretne létrehozni, hozza létre az identitást, majd adja hozzá az erőforrás-azonosítóját az alkalmazás konfigurációjához.
Hozzon létre egy felhasználó által hozzárendelt felügyelt identitáserőforrást az utasításoknak megfelelően.
Az alkalmazás lapjának bal oldali menüjében válassza a Beállítások>.
Válassza ki a hozzárendelt felhasználót, majd válassza a Hozzáadás lehetőséget.
Keresse meg a korábban létrehozott identitást, jelölje ki, majd válassza a Hozzáadás lehetőséget.
A lépések elvégzése után az alkalmazás újraindul.
A célerőforrás konfigurálása
Konfigurálnia kell a célerőforrást az alkalmazásból való hozzáférés engedélyezéséhez. A legtöbb Azure-szolgáltatás esetében egy szerepkör-hozzárendelés létrehozásával konfigurálja a célerőforrást.
Egyes szolgáltatások az Azure-beli szerepköralapú hozzáférés-vezérlésen kívül más mechanizmusokat is használnak. Ha szeretné megtudni, hogyan konfigurálhatja a hozzáférést identitás használatával, tekintse meg az egyes célerőforrásokkal kapcsolatos dokumentációt. Ha többet szeretne megtudni arról, hogy mely erőforrások támogatják a Microsoft Entra-jogkivonatokat, tekintse meg a Microsoft Entra-hitelesítést támogató Azure-szolgáltatásokat.
Ha például jogkivonatot kér egy titok eléréséhez az Azure Key Vaultban, létre kell hoznia egy szerepkör-hozzárendelést is, amely lehetővé teszi, hogy a felügyelt identitás a céltárolóban a titkokkal működjön. Ellenkező esetben a Key Vault akkor is elutasítja a hívásokat, ha érvényes jogkivonatot használ. Ugyanez igaz az Azure SQL Database-hez és más szolgáltatásokhoz is.
Fontos
A felügyelt identitások háttérszolgáltatásai erőforrás-URI-nként körülbelül 24 órán át tartanak gyorsítótárat, és akár ennyi időt is igénybe vehet a felügyelt identitás csoport- vagy szerepkör-tagságának módosítása. Jelenleg nem lehetséges a felügyelt identitás jogkivonatának frissítését a lejárat előtt kikényszeríteni. Ha módosítja egy felügyelt identitás csoport- vagy szerepkör-tagságát az engedélyek hozzáadásához vagy eltávolításához, előfordulhat, hogy körülbelül 24 órát kell várnia arra az Azure-erőforrásra, amely az identitást használja a megfelelő hozzáféréshez.
A csoportok vagy szerepkör-tagságok alternatíváit a felügyelt identitások hitelesítéshez való használatának korlátozásával kapcsolatos cikkben találhatja meg.
Csatlakozás azure-szolgáltatásokhoz alkalmazáskódban
A felügyelt identitással az alkalmazások jogkivonatokat szerezhetnek be a Microsoft Entra ID által védett Azure-erőforrásokhoz, például az Azure SQL Database-hez, az Azure Key Vaulthoz és az Azure Storage-hoz. Ezek a jogkivonatok az erőforráshoz hozzáférő alkalmazást jelölik, nem pedig az alkalmazás adott felhasználóját.
Az App Service és az Azure Functions egy belsőleg elérhető REST-végpontot biztosít a jogkivonatok lekéréséhez. A REST-végpontot egy szabványos HTTP-kéréssel GET érheti el az alkalmazásban. A kérést minden nyelven implementálhatja egy általános HTTP-ügyféllel.
A .NET, a JavaScript, a Java és a Python esetében az Azure Identity-ügyfélkódtár absztrakciót biztosít ezen REST-végponton, és leegyszerűsíti a fejlesztési élményt. A más Azure-szolgáltatásokhoz való csatlakozás olyan egyszerű, mintha hitelesítő objektumot ad hozzá a szolgáltatásspecifikus ügyfélhez.
A nyers HTTP-kérések GET a két megadott környezeti változót használják , és az alábbi példához hasonlóan néznek ki:
GET /MSI/token?resource=https://vault.azure.net&api-version=2019-08-01 HTTP/1.1
Host: <ip-address-:-port-in-IDENTITY_ENDPOINT>
X-IDENTITY-HEADER: <value-of-IDENTITY_HEADER>
A mintaválasz a következő példához hasonlóan nézhet ki:
HTTP/1.1 200 OK
Content-Type: application/json
{
"access_token": "eyJ0eXAi…",
"expires_on": "1586984735",
"resource": "https://vault.azure.net",
"token_type": "Bearer",
"client_id": "00001111-aaaa-2222-bbbb-3333cccc4444"
}
Ez a válasz ugyanaz, mint a Microsoft Entra szolgáltatás–szolgáltatás hozzáférési jogkivonat-kérésre adott válasz. A Key Vault eléréséhez adja hozzá a access_token értékét a tárolóval létesített ügyfélkapcsolathoz.
A REST-végpontról további információt a jelen cikk későbbi, REST-végpontra vonatkozó hivatkozásában talál.
Identitás eltávolítása
Ha eltávolít egy rendszer által hozzárendelt identitást, az törlődik a Microsoft Entra-azonosítóból. A rendszer által hozzárendelt identitások automatikusan törlődnek a Microsoft Entra-azonosítóból is, amikor törli magát az alkalmazáserőforrást.
Az alkalmazás lapjának bal oldali menüjében válassza a Beállítások>.
Kövesse a lépéseket az identitástípus alapján:
- Rendszer által hozzárendelt identitás esetén: A Rendszer által hozzárendelt lapon állítsa az ÁllapototKi értékre. Ezután válassza a Mentés lehetőséget.
- Felhasználó által hozzárendelt identitás esetén: Válassza a Felhasználó által hozzárendelt lapot, jelölje be az identitás jelölőnégyzetét, majd válassza az Eltávolítás lehetőséget. Válassza az Igen lehetőséget a megerősítéshez.
Megjegyzés:
Olyan alkalmazásbeállítást is beállíthat, amely csak a helyi jogkivonat-szolgáltatást tiltja le: WEBSITE_DISABLE_MSI. Az identitást azonban a helyén hagyja. Az eszköztár továbbra is bekapcsolt vagy engedélyezett állapotban jeleníti meg a felügyelt identitást. Ezért nem javasoljuk, hogy ezt a beállítást használja.
REST-végpont referenciája
Egy felügyelt identitással rendelkező alkalmazás két környezeti változó definiálásával teszi elérhetővé ezt a végpontot:
-
IDENTITY_ENDPOINT: A helyi token szolgáltatás URL-címe. -
IDENTITY_HEADER: Olyan fejléc, amely segíthet a kiszolgálóoldali kéréshamisítási (SSRF-) támadások csökkentésében. A platform elforgatja az értéket.
A IDENTITY_ENDPOINT változó egy helyi URL-cím, amelyből az alkalmazás tokeneket kérhet. Egy erőforrás jogkivonatának lekéréséhez http-kérést GET kell küldenie ehhez a végponthoz. Adja meg a következő paramétereket:
Paraméter neve Ben/Ne Leírás resourceLekérdezés Annak az erőforrásnak a Microsoft Entra-erőforrás URI-ja, amelyhez token-t kell beszerezni. Ez az erőforrás lehet az egyik Olyan Azure-szolgáltatás, amely támogatja a Microsoft Entra-hitelesítést vagy bármely más erőforrás-URI-t. api-versionLekérdezés A használni kívánt token API verziója. Használja az 2019-08-01parancsot.X-IDENTITY-HEADERFejléc A környezeti változó értéke IDENTITY_HEADER. Ez a fejléc az SSRF-támadások enyhítésére szolgál.client_idLekérdezés (Nem kötelező) A használni kívánt felhasználó által hozzárendelt identitás ügyfélazonosítója. Nem használható olyan kérések esetén, amelyek tartalmazzák principal_idaz ,mi_res_idvagyobject_id. Ha az összes azonosítóparaméter (client_id, ,principal_id,object_idésmi_res_id) hiányzik, a rendszer által hozzárendelt identitást használja.principal_idLekérdezés (Nem kötelező) A felhasználóhoz rendelt identitás fő azonosítója, amelyet használni kell. A object_idparaméter egy alias, amely használható helyette. Nem használható olyan kérések esetén, amelyek tartalmazzákclient_idaz ,mi_res_idvagyobject_id. Ha az összes azonosítóparaméter (client_id, ,principal_id,object_idésmi_res_id) hiányzik, a rendszer által hozzárendelt identitást használja.mi_res_idLekérdezés (Nem kötelező) A felhasználó által hozzárendelt identitáshoz tartozó Azure-erőforrás-azonosító, amit használni kell. Nem használható olyan kérések esetén, amelyek tartalmazzák principal_idaz ,client_idvagyobject_id. Ha az összes azonosítóparaméter (client_id, ,principal_id,object_idésmi_res_id) hiányzik, a rendszer által hozzárendelt identitást használja.
Fontos
Ha szeretne jogkivonatokat lekérni a felhasználói identitásokhoz, adja meg az egyik választható tulajdonságot. Ellenkező esetben a jogkivonat-szolgáltatás megpróbál jogkivonatot lekérni egy olyan rendszer által kijelölt identitáshoz, amely lehet, hogy létezik, vagy lehet, hogy nem.
Kapcsolódó tartalom
Tekintse át az alábbi oktatóanyagokat:
- Csatlakozás az SQL-adatbázishoz a .NET App Service-ből titkok nélkül felügyelt identitással
- Azure-szolgáltatások elérése .NET-webalkalmazásból
- A Microsoft Graph elérése biztonságos .NET-alkalmazásból alkalmazásként
- Cognitive Service-kapcsolat biztonságossá tétele a .NET App Service-ből a Key Vault használatával