Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье рассматривается, как библиотека удостоверений Azure поддерживает аутентификацию токена Microsoft Entra с помощью учетной записи службы. В этой статье рассматриваются следующие темы:
- Создайте учетную запись службы с помощью Azure CLI
- Учетные данные секрета клиента
- Учетные данные сертификата клиента
Для получения дополнительной информации см. Объекты приложения и учетной записи службы в Microsoft Entra ID. Сведения об устранении неполадок проверки подлинности субъекта-службы см. в разделе "Устранение неполадок с проверкой подлинности субъекта-службы".
Создание субъекта-службы с помощью Azure CLI
Используйте следующие примеры Azure CLI для создания или получения учетных данных закрытого ключа клиента.
Используйте следующую команду, чтобы создать учетную запись службы и настроить доступ к ресурсам Azure.
az ad sp create-for-rbac \
--name <your application name> \
--role Contributor \
--scopes /subscriptions/mySubscriptionID
Эта команда возвращает значение, аналогичное следующим выходным данным:
{
"appId": "generated-app-ID",
"displayName": "dummy-app-name",
"name": "http://dummy-app-name",
"password": "random-password",
"tenant": "tenant-ID"
}
Используйте следующую команду, чтобы создать сервис-принципал вместе с сертификатом. Запишите путь или расположение этого сертификата.
az ad sp create-for-rbac \
--name <your application name> \
--role Contributor \
--cert <certificate name> \
--create-cert
Проверьте возвращенные учетные данные и запишите следующие сведения:
-
AZURE\_CLIENT\_ID
для идентификатора приложения. -
AZURE\_CLIENT\_SECRET
для пароля. -
AZURE\_TENANT\_ID
для арендатора.
Учетные данные секрета клиента
Эти учетные данные проходят проверку подлинности созданного субъекта-службы с помощью секрета клиента (пароль). В этом примере демонстрируется проверка подлинности SecretClient
из клиентской библиотеки azure-security-keyvault-secrets с использованием ClientSecretCredential
.
/**
* Authenticate with client secret.
*/
ClientSecretCredential clientSecretCredential = new ClientSecretCredentialBuilder()
.clientId("<your client ID>")
.clientSecret("<your client secret>")
.tenantId("<your tenant ID>")
.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(clientSecretCredential)
.buildClient();
Учетные данные клиентского сертификата
Эти учетные данные аутентифицируют созданного служебного принципала с помощью его сертификата клиента. В этом примере демонстрируется проверка подлинности SecretClient
из клиентской библиотеки azure-security-keyvault-secrets с использованием ClientCertificateCredential
.
/**
* Authenticate with a client certificate.
*/
ClientCertificateCredential clientCertificateCredential = new ClientCertificateCredentialBuilder()
.clientId("<your client ID>")
.pemCertificate("<path to PEM certificate>")
// Choose between either a PEM certificate or a PFX certificate.
//.pfxCertificate("<path to PFX certificate>")
//.clientCertificatePassword("PFX CERTIFICATE PASSWORD")
.tenantId("<your tenant ID>")
.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(clientCertificateCredential)
.buildClient();
Дальнейшие шаги
В этой статье рассматривается аутентификация с помощью учетной записи службы. Эта форма проверки подлинности является лишь одним из нескольких методов аутентификации в Azure SDK для Java. В указанных ниже статьях описаны другие способы.
- Аутентификация Azure в средах разработки
- Аутентификация приложений, размещенных в Azure
- Проверка подлинности с помощью учетных данных пользователя
Если возникнут проблемы, связанные с проверкой подлинности субъекта-службы, см. статью "Устранение неполадок с проверкой подлинности субъекта-службы".
После настройки аутентификации ознакомьтесь со статьей Настройка ведения журнала в пакете Azure SDK для Java, чтобы получить сведения о возможностях ведения журнала, предоставляемых пакетом SDK