Share via


TLS-/SSL-tanúsítványok kézbesítése az Azure Key Vault használatával a JVM-nek

Ez a cikk azt ismerteti, hogyan integrálható az Azure Key Vault a JVM-be TLS/SSL-tanúsítványok kézbesítéséhez.

A JCA-szolgáltató hozzáadása a java.security fájlhoz

A JCA-szolgáltató regisztrálásához a JVM-nek tudnia kell róla. A feladat végrehajtásához kövesse az alábbi lépéseket:

  1. Készítsen másolatot a java.security fájlról a JVM-telepítésben, és nevezze el a fájlt a my.java.security névvel.

  2. A fájlban keresse meg a sort security.provider.<maximum-value>. Cserélje le a <maximum-value> helyőrzőt az ebben a pozícióban lévő maximális értékre az összes bejegyzés között. For example: security.provider.13=SunPKCS11.

  3. Növelje a bejegyzés számát 1-zel. Például a security.provider.13 következőnek kell lennie security.provider.14: .

  4. Adja hozzá a következő sort:

    security.provider.14=com.azure.security.keyvault.jca.KeyVaultJcaProvider
    

Megjegyzés:

Győződjön meg arról, hogy minden security.provider.<X> bejegyzéshez más számérték tartozik <X>, és 1-től kezdve növekményesen rendezi őket.

Az alkalmazás futtatása

Az alkalmazás futtatásához kövesse az alábbi lépéseket, és cserélje le a helyőrzőket a <...> saját értékeire:

  1. Adja hozzá az azure-security-keyvault-jca-X.Y.Z.jar fájlt az osztályúthoz. Ha például integrálni szeretné a Tomcat 9-et, akkor a tomcat9w.exe használatával adja hozzá az azure-security-keyvault-jca-X.Y.Z.jar fájl teljes elérési útját a Java-osztályúthoz.

  2. Hozzáadás -Djava.security.properties==my.java.security a parancssorhoz.

  3. Adja hozzá -Dazure.keyvault.uri=<your-keyvault-uri> a parancssorhoz, hogy jelezze, melyik Azure Key Vaultot használja. For example: -Dazure.keyvault.uri=https://some.vault.azure.net/.

  4. Adja hozzá a következő listában szereplő argumentumokat a forgatókönyvtől függően:

    • Ha szolgáltatásnévvel hitelesít, adja hozzá a következő argumentumokat:

      • -Dazure.keyvault.tenant-id=<your-tenant-id>
      • -Dazure.keyvault.client-id=<your-client-id>
      • -Dazure.keyvault.client-secret=<your-client-secret>
    • Ha rendszer által hozzárendelt felügyelt identitással hitelesít, nincs szükség további argumentumokra.

    • Ha felhasználó által hozzárendelt felügyelt identitással hitelesít, adja hozzá a következő argumentumot:

      • -Dazure.keyvault.managed-identity=<object-id-of-your-user-managed-identity>

További információ ezekről a hitelesítési forgatókönyvekről: Alkalmazás- és szolgáltatásnév-objektumok a Microsoft Entra-azonosítóban és az Azure-erőforrások felügyelt identitásainak működése az Azure-beli virtuális gépeken.

Szolgáltatásnév használata

Azure-ügyfélazonosító és Azure-ügyfélkód létrehozásához használja az alábbi parancsot, és cserélje le a helyőrzőket a <...> saját értékeire. Mindenképpen tárolja a visszaadott értékeket, példáulappId: , password. tenant

export CLIENT_NAME=<your-client-name>
az ad sp create-for-rbac --skip-assignment --name ${CLIENT_NAME}
export CLIENT_ID=$(az ad sp list --display-name ${CLIENT_NAME} | jq -r '.[0].appId')
az ad app credential reset --id ${CLIENT_ID}

Tárolja a visszaadott értékeket, hogy később használhassa őket.

Győződjön meg arról, hogy a megadott CLIENT_ID ügyfél hozzáfér a célkulcstartóhoz. A hozzáférés megadásához használja a következő parancsot, és cserélje le a helyőrzőt <your-key-vault-name> :

az keyvault set-policy \
    --name <your-key-vault-name> \
    --spn ${CLIENT_ID} \
    --secret-permissions get list \
    --certificate-permissions get list \
    --key-permissions get list

Felügyelt identitás használata

A rendszer által hozzárendelt felügyelt identitás engedélyezéséhez vagy felhasználó által hozzárendelt felügyelt identitás létrehozásához kövesse az Azure-beli virtuális gépeken az Azure-beli virtuális gépek felügyelt identitásainak konfigurálása az Azure CLI használatával című témakör utasításait

A felügyelt identitás objektumazonosítójának lekérése után az alábbi paranccsal hozza létre a Key Vault hozzáférési szabályzatát a felügyelt identitáshoz:

az keyvault set-policy \
    --name <your-key-vault-name> \
    --object-id <object-id-of-your-managed-identity> \
    --secret-permissions get list \
    --certificate-permissions get list \
    --key-permissions get list

Megjegyzés:

A felügyelt identitás objektumazonosítóját felhasználó által hozzárendelt felügyelt identitás használatakor egyszerű azonosítónak is nevezzük.

Ügyfél-/kiszolgálóoldali TLS/SSL-példák

Az ügyfél-/kiszolgálóoldali TLS/SSL példákért lásd a Java-hoz készült Azure Key Vault JCA ügyfélkódtár Példák szakaszát.

További lépések