Azure által üzemeltetett Java-alkalmazások hitelesítése az erőforrások Azure rendszer által hozzárendelt felügyelt identitás használatával

Az Azure által üzemeltetett alkalmazások más Azure erőforrásokra való hitelesítésének ajánlott módszere egy felügyelt identitás használata. A legtöbb Azure szolgáltatás támogatja ezt a megközelítést, beleértve a Azure App Service, Azure Container Apps és Azure Virtual Machines üzemeltetett alkalmazásokat is. További információ: Azure felügyelt identitásokat támogató szolgáltatások és erőforrástípusok. A különböző hitelesítési technikákról és módszerekről a A szolgáltatások Azure Java alkalmazások hitelesítése az Azure Identitástár használatával című témakörben talál további információt.

A következő szakaszokban a következőket ismerheti meg:

  • Alapvető felügyelt identitásfogalmak.
  • Rendszer által hozzárendelt felügyelt identitás létrehozása az alkalmazáshoz.
  • Szerepkörök hozzárendelése a rendszer által hozzárendelt felügyelt identitáshoz.
  • Hitelesítés a rendszer által hozzárendelt felügyelt identitással az alkalmazáskódból.

Alapvető felügyelt identitásfogalmak

A felügyelt identitás lehetővé teszi, hogy az alkalmazás biztonságosan csatlakozzon más Azure erőforrásokhoz titkos kulcsok vagy más alkalmazáskulcsok használata nélkül. Belsőleg Azure nyomon követi az identitást, és hogy mely erőforrásokhoz csatlakozhat. Azure ezeket az információkat arra használja, hogy automatikusan Microsoft Entra tokeneket szerezzen meg az alkalmazáshoz, lehetővé téve, hogy más Azure erőforrásokhoz csatlakozzon.

A felügyelt identitások kétféleképpen konfigurálhatók a üzemeltetett alkalmazás konfigurálásakor:

  • System által hozzárendelt felügyelt identitások közvetlenül egy Azure erőforráson vannak engedélyezve, és az életciklusához vannak kötve. Az erőforrás törlésekor az Azure automatikusan törli az identitást. A rendszer által hozzárendelt identitások minimalista megközelítést biztosítanak a felügyelt identitások használatához.
  • Felhasználó által hozzárendelt felügyelt identitások különálló Azure erőforrásokként jönnek létre, és nagyobb rugalmasságot és képességeket biztosítanak. Olyan megoldásokhoz ideálisak, amelyek több Azure erőforrást tartalmaznak, amelyeknek azonos identitással és engedélyekkel kell rendelkezniük. Ha például több virtuális gépnek kell elérnie ugyanazt a Azure erőforráskészletet, a felhasználó által hozzárendelt felügyelt identitás újrahasználhatóságot és optimalizált felügyeletet biztosít.

Jótanács

További információ a rendszer által hozzárendelt és a felhasználó által hozzárendelt felügyelt identitások kiválasztásáról és kezeléséről a felügyelt identitásokkal kapcsolatos ajánlott eljárásokra vonatkozó javaslatokkal foglalkozó cikkben.

Az alábbi szakaszok a rendszer által hozzárendelt felügyelt identitás Azure által üzemeltetett alkalmazásokhoz való engedélyezésének és használatának lépéseit ismertetik. Ha felhasználó által hozzárendelt felügyelt identitást kell használnia, tekintse meg a A felhasználó által hozzárendelt felügyelt identitással Azure erőforrások Azure által üzemeltetett Java-alkalmazások hitelesítése című témakört.

Rendszer által hozzárendelt felügyelt identitás engedélyezése a Azure üzemeltetési erőforráson

A rendszer által hozzárendelt felügyelt identitás alkalmazással való használatának megkezdéséhez engedélyezze az identitást az alkalmazást futtató Azure erőforráson, például egy Azure App Service, Azure Container Apps vagy Azure Virtual Machines-példányon.

Egy Azure erőforráshoz rendszer által hozzárendelt felügyelt identitást engedélyezhet a Azure portálon vagy a Azure CLI.

  1. A Azure portálon keresse meg az alkalmazáskódot tároló erőforrást, például egy Azure App Service vagy Azure Container Apps-példányt.

  2. Az erőforrás Áttekintés lapján bontsa ki a Beállítások elemet, és válassza ki az Identitás elemet a navigációs sávon.

  3. Az Identitás lapon állítsa a Állapot csúszkát Be állásba.

  4. Válassza a Mentés lehetőséget a módosítások alkalmazásához.

    Képernyőkép a rendszer által hozzárendelt felügyelt identitások tárolóalkalmazásokon való engedélyezéséről.

Szerepkörök hozzárendelése a felügyelt identitáshoz

Ezután határozza meg, hogy az alkalmazásnak mely szerepkörökre van szüksége, és rendelje hozzá ezeket a szerepköröket a felügyelt identitáshoz. A szerepköröket a következő hatókörökben rendelheti hozzá egy felügyelt identitáshoz:

  • erőforrás-: A hozzárendelt szerepkörök csak az adott erőforrásra vonatkoznak.
  • erőforráscsoport: A hozzárendelt szerepkörök az erőforráscsoportban található összes erőforrásra vonatkoznak.
  • Előfizetési: A hozzárendelt szerepkörök az előfizetésben található összes erőforrásra vonatkoznak.

Az alábbi példa bemutatja, hogyan rendelhet hozzá szerepköröket az erőforráscsoport hatóköréhez, mivel számos alkalmazás egyetlen erőforráscsoport használatával kezeli az összes kapcsolódó Azure erőforrást.

  1. Lépjen a Áttekintés lapjára annak az erőforráscsoportnak, amely a rendszer által hozzárendelt felügyelt identitással rendelkező alkalmazást tartalmazza.

  2. Válassza Hozzáférés-vezérlés (IAM) a bal oldali navigációs sávon.

  3. A Hozzáférés-vezérlés (IAM) lapon válassza a + hozzáadása lehetőséget a felső menüben, majd válassza a Szerepkör-hozzárendelés hozzáadása lehetőséget a Szerepkör-hozzárendelés hozzáadása lapra való navigáláshoz.

    Képernyőkép az identitásszerepkör-hozzárendelési lap eléréséről.

  4. A Szerepkör-hozzárendelés hozzáadása oldal egy füles, többlépéses munkafolyamatot jelenít meg a szerepkörök identitásokhoz való hozzárendeléséhez. A kezdeti Szerepkör lapon a felső keresőmezővel keresse meg az identitáshoz hozzárendelni kívánt szerepkört.

  5. Válassza ki a szerepkört az eredmények közül, majd a Következő lehetőséget választva lépjen a Tagok lapra.

  6. A Hozzáférés hozzárendeléséhez a beállításnál válassza ki a Felügyelt identitáslehetőséget.

  7. A Tagok beállításnál válassza a + Tagok kijelölése lehetőséget a Felügyelt identitások kiválasztása panel megnyitásához.

  8. A Felügyelt identitások kiválasztása panelen az Előfizetés és Felügyelt identitás legördülő menükből szűrheti az identitások keresési eredményeit. A Select keresőmezővel keresse meg az alkalmazást üzemeltető Azure erőforráshoz engedélyezett rendszeridentitást.

    Képernyőkép a felügyelt identitás-hozzárendelési folyamatról.

  9. Válassza ki az azonosságot, és válassza a Kijelölés lehetőséget a panel alján a folytatáshoz.

  10. Válassza a Véleményezés és a Hozzárendelés lehetőséget az oldal alján.

  11. Az utolsó Véleményezés és hozzárendelés lapon válassza az Véleményezés és hozzárendelés lehetőséget a munkafolyamat befejezéséhez.

Hitelesítés Azure szolgáltatásokhoz az alkalmazásból

Az Azure Identity-kódtár különböző hitelesítő adatokat biztosít– a TokenCredential különböző forgatókönyvekhez és a Microsoft Entra hitelesítési folyamatokhoz igazított implementációkat. Mivel a felügyelt identitás helyi futtatáskor nem érhető el, az alábbi lépések bemutatják, hogy melyik hitelesítő adatot melyik forgatókönyvben érdemes használni:

  • Helyi fejlesztői környezet: Csak a helyi fejlesztés során használjon DefaultAzureCredential nevű osztályt a hitelesítő adatok véleményezett, előre konfigurált láncolatához. DefaultAzureCredential A felhasználói hitelesítő adatokat a helyi eszközkészletből vagy IDE-ből, például az Azure CLI-ből vagy a Visual Studio Code-ból észleli. Emellett rugalmasságot és kényelmet biztosít az újrapróbálkozáshoz, a válaszok várakozási idejéhez és a több hitelesítési lehetőség támogatásához is. További információért látogasson el az Azure szolgáltatások hitelesítése helyi fejlesztés során című cikkre.
  • Azure által üzemeltetett alkalmazások: Ha az alkalmazás Azure fut, a ManagedIdentityCredential használatával biztonságosan felderítheti az alkalmazáshoz konfigurált felügyelt identitást. Ennek a hitelesítő adattípusnak a megadása megakadályozza, hogy más elérhető hitelesítő adatok váratlanul átvehetők legyenek.

A kód implementálása

Adja hozzá a azure-identity függőséget a pom.xml fájlhoz:

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-identity</artifactId>
</dependency>

Az Azure-szolgáltatások speciális ügyfélosztályokkal érhetők el a különböző Azure SDK-ügyfélkódtárakból. Az alábbi példakód bemutatja, hogyan hozhat létre hitelesítőadat-példányt, és hogyan használhatja azt egy Azure SDK-szolgáltatásügyféllel. Az alkalmazáskódban hajtsa végre a következő lépéseket a felügyelt identitás használatával történő hitelesítéshez:

  1. Importálja a , DefaultAzureCredentialBuilderés ManagedIdentityCredentialBuilder osztályokatTokenCredential.
  2. Adjon át egy megfelelő TokenCredential példányt az ügyfélnek:
    • Helyi futtatáskor használható DefaultAzureCredential
    • Akkor használható ManagedIdentityCredential , ha az alkalmazás az Azure-ban fut

Az alábbi példa egy rendszer által hozzárendelt felügyelt identitás használatával történő hitelesítést SecretClient mutatja be:

import com.azure.core.credential.TokenCredential;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.identity.ManagedIdentityCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;

TokenCredential credential = null;

// Set up credential based on environment (Azure or local development)
String environment = System.getenv("ENV");

if (environment != null && environment.equals("production")) {
    credential = new ManagedIdentityCredentialBuilder()
        .build();
} else {
    credential = new DefaultAzureCredentialBuilder()
        .build();
}

// Azure SDK client builders accept the credential as a parameter
SecretClient client = new SecretClientBuilder()
    .vaultUrl("https://<your-key-vault-name>.vault.azure.net")
    .credential(credential)
    .buildClient();

Következő lépések

Ez a cikk a rendszer által hozzárendelt felügyelt identitást használó hitelesítést ismerteti. Ez a hitelesítési mód az Azure SDK for Java-ban történő hitelesítés egyik lehetséges módja. A következő cikkek a következő módszereket ismertetik:

Ha Azure által üzemeltetett alkalmazáshitelesítéssel kapcsolatos problémákat tapasztal, tekintse meg a Troubleshoot Azure által üzemeltetett alkalmazáshitelesítést.