Megosztás a következőn keresztül:


Azure-hitelesítés Java és Azure Identity használatával

Ez a cikk áttekintést nyújt a Java-hoz készült Azure Identity-kódtárról, amely a Microsoft Entra-jogkivonat-hitelesítést támogatja a Javához készült Azure SDK-ban. Ez a kódtár számos olyan implementációt biztosít TokenCredential , amelyekkel Olyan Azure SDK-ügyfeleket hozhat létre, amelyek támogatják a Microsoft Entra-jogkivonat-hitelesítést.

Az Azure Identity-kódtár jelenleg a következőket támogatja:

Kövesse ezeket a hivatkozásokat, ha többet szeretne megtudni az egyes hitelesítési módszerek jellemzőiről. A cikk további részében bemutatjuk a gyakran használt DefaultAzureCredential és kapcsolódó témákat.

A Maven-függőségek hozzáadása

Adja hozzá a azure-sdk-bom-t a projektjéhez, hogy függőséget vegyen igénybe a könyvtár stabil verziójához. Az alábbi kódrészletben cserélje le a {bom_version_to_target} helyőrzőt a verziószámra. Az Azure SDK és az Apache Maven használatbavétele című útmutató Azure SDK és az Apache Maven használatbavétele részének Azure SDK for Java hozzáadása egy meglévő projekthez című részében talál további információt a BOM-ról.

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-sdk-bom</artifactId>
            <version>{bom_version_to_target}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

Ezután adja meg a közvetlen függőséget a dependencies verziócímke nélküli szakaszban:

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

Fő fogalmak

Az Azure Identity-kódtár megértésének két fő fogalma van: a hitelesítő adatok fogalma és a hitelesítő adatok leggyakoribb implementálása. DefaultAzureCredential

A hitelesítő adat egy olyan osztály, amely tartalmazza vagy lekérheti a szolgáltatási ügyfél számára a kérések hitelesítéséhez szükséges adatokat. Az Azure SDK szolgáltatás-ügyfelei a létrehozásakor elfogadják a hitelesítő adatokat, a szolgáltatás ügyfelei pedig ezeket a hitelesítő adatokat használják a szolgáltatáshoz érkező kérések hitelesítéséhez.

Az Azure Identity-kódtár a Microsoft Entra ID-val történő OAuth-hitelesítésre összpontosít, és különböző hitelesítő osztályokat kínál, amelyek a szolgáltatáskérések hitelesítéséhez microsoft Entra-jogkivonatot szerezhetnek be. A könyvtárban található összes hitelesítő osztály az TokenCredential absztrakt osztályának megvalósítása az azure-core-ban, és bármelyikkel létrehozhat olyan szolgáltatásügyfeleket, amelyek hitelesíthetők egy TokenCredential.

DefaultAzureCredential a legtöbb olyan forgatókönyv esetében megfelelő, ahol az alkalmazás végső soron az Azure Cloudban fog futni. DefaultAzureCredential az üzembe helyezéskor gyakran használt hitelesítő adatokat kombinálja a fejlesztési környezetben történő hitelesítéshez használt hitelesítő adatokkal. További információkért, beleértve a példákat isDefaultAzureCredential, tekintse meg az Azure által üzemeltetett Java-alkalmazások hitelesítésének DefaultAzureCredential szakaszát.

Példák

Amint azt a Java-hoz készült Azure SDK használatában is említettük, a felügyeleti kódtárak kissé eltérnek egymástól. Az egyik különbség az, hogy vannak olyan kódtárak az Azure-szolgáltatások használatához, amelyeket ügyfélkódtáraknak, valamint az Azure-szolgáltatások felügyeletére szolgáló kódtárakat, úgynevezett felügyeleti kódtárakat. A következő szakaszokban gyorsan áttekintheti az ügyfél- és felügyeleti kódtárak hitelesítését.

Azure-ügyfélkódtárak hitelesítése

Az alábbi példa az SecretClient hitelesítését mutatja be az azure-security-keyvault-secrets ügyfélkönyvtár használatával DefaultAzureCredential.

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

Azure felügyeleti kódtárak hitelesítése

Az Azure felügyeleti kódtárai ugyanazokat a hitelesítő API-kat használják, mint az Azure-ügyfélkódtárak, de azure-előfizetés-azonosítót is igényelnek az adott előfizetés Azure-erőforrásainak kezeléséhez.

Az előfizetés azonosítóit az Azure Portal Előfizetések lapján találja. Másik lehetőségként használja az alábbi Azure CLI-parancsot az előfizetés azonosítóinak lekéréséhez:

az account list --output table

Az előfizetés azonosítóját a AZURE_SUBSCRIPTION_ID környezeti változóban állíthatja be. AzureProfile Ezt az azonosítót veszi fel alapértelmezett előfizetés-azonosítóként egy Manager példány létrehozása során az alábbi példában:

AzureResourceManager azureResourceManager = AzureResourceManager.authenticate(
        new DefaultAzureCredentialBuilder().build(),
        new AzureProfile(AzureEnvironment.AZURE))
    .withDefaultSubscription();

DefaultAzureCredential ebben a példában AzureResourceManager példány hitelesítése DefaultAzureCredential használatával történik. Az Azure Identity-kódtárban kínált egyéb Token Credential implementációkat is használhatja a helyett.DefaultAzureCredential

Hibaelhárítás

Útmutatásért tekintse meg az Azure Identity hitelesítési problémáinak elhárítását ismertető témakört.

Következő lépések

Ez a cikk bemutatta a Java Azure SDK-ban elérhető Azure Identity-funkciókat. Ez sok esetben gyakorinak és megfelelőnek minősül DefaultAzureCredential . Az alábbi cikkek az Azure Identity-kódtár használatával történő hitelesítés egyéb módjait ismertetik, és további információt nyújtanak a következőkről DefaultAzureCredential: