Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale, Azure Identity kitaplığının hizmet sorumlusu aracılığıyla Microsoft Entra belirteci kimlik doğrulamasını nasıl desteklediğini ele almaktadır. Bu makale aşağıdaki konuları kapsar:
- Azure CLI ile bir hizmet ilkesi oluşturma
- İstemci gizli kimlik bilgisi
- İstemci sertifikası kimlik bilgileri
Daha fazla bilgi için bkz . Microsoft Entra Id'de uygulama ve hizmet sorumlusu nesneleri. Hizmet sorumlusu kimlik doğrulaması sorunlarını gidermek için bkz Hizmet sorumlusu kimlik doğrulaması sorunlarını giderme.
Azure CLI ile hizmet sorumlusu oluşturma
İstemci gizli anahtarı kimlik bilgilerini oluşturmak veya almak için aşağıdaki Azure CLI örneklerini kullanın.
Bir hizmet sorumlusu oluşturmak ve Azure kaynaklarına erişimini yapılandırmak için aşağıdaki komutu kullanın:
az ad sp create-for-rbac \
--name <your application name> \
--role Contributor \
--scopes /subscriptions/mySubscriptionID
Bu komut aşağıdaki çıkışa benzer bir değer döndürür:
{
"appId": "generated-app-ID",
"displayName": "dummy-app-name",
"name": "http://dummy-app-name",
"password": "random-password",
"tenant": "tenant-ID"
}
Sertifikayla birlikte hizmet sorumlusu oluşturmak için aşağıdaki komutu kullanın. Bu sertifikanın yolunu/konumunu not edin.
az ad sp create-for-rbac \
--name <your application name> \
--role Contributor \
--cert <certificate name> \
--create-cert
Döndürülen kimlik bilgilerini denetleyin ve aşağıdaki bilgileri not edin:
-
AZURE\_CLIENT\_IDappId için. -
AZURE\_CLIENT\_SECRETparolası için. - AZURE_TENANT_ID kiracısı için.
İstemci gizli kimlik bilgisi
Bu kimlik bilgisi, oluşturulan hizmet sorumlusunun kimliğini istemci gizli anahtarı (parola) aracılığıyla doğrular. Bu örnek, SecretClient kullanarak, ClientSecretCredential ile azure-security-keyvault-secrets istemci kitaplığındaki öğesinin kimliğini doğrulamayı gösterir.
/**
* 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();
İstemci sertifikası kimlik bilgileri
Bu kimlik bilgisi, oluşturulan hizmet sorumlusunun kimliğini istemci sertifikası aracılığıyla doğrular. Bu örnek, SecretClient kullanarak, ClientSecretCredential ile azure-security-keyvault-secrets istemci kitaplığındaki öğesinin kimliğini doğrulamayı gösterir.
/**
* 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();
Sonraki adımlar
Bu makalede hizmet sorumlusu aracılığıyla kimlik doğrulaması ele alınmıştır. Bu kimlik doğrulama biçimi, Java için Azure SDK'da kimlik doğrulaması yapmanın birden çok yoludur. Aşağıdaki makalelerde diğer yollar açıklanmaktadır:
- Geliştirme ortamlarında Azure kimlik doğrulaması
- Azure'da barındırılan uygulamaların kimliğini doğrulama
- Kullanıcı Kimlik Bilgileriyle Kimlik Doğrulaması
Hizmet sorumlusu kimlik doğrulamasıyla ilgili sorunlarla karşılaşırsanız şu talimatlara bakın: Hizmet sorumlusu kimlik doğrulaması sorunlarını giderme.
Kimlik doğrulamasında ustalaştıktan sonra, SDK tarafından sağlanan günlük işlevselliği hakkında bilgi için Java için Azure SDK'da günlüğe kaydetmeyi yapılandırma bölümüne bakın.