Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano, jak biblioteka tożsamości platformy Azure obsługuje uwierzytelnianie tokenu entra firmy Microsoft za pośrednictwem jednostki usługi. W tym artykule omówiono następujące tematy:
- Tworzenie jednostki usługi przy użyciu interfejsu wiersza polecenia platformy Azure
- Poświadczenie tajnego klienta
- Poświadczenie certyfikatu klienta
Aby uzyskać więcej informacji, zobacz Application and service principal objects in Microsoft Entra ID (Obiekty aplikacji i jednostki usługi w usłudze Microsoft Entra ID). Aby rozwiązać problemy z uwierzytelnianiem jednostki usługi, zobacz Rozwiązywanie problemów z uwierzytelnianiem jednostki usługi.
Tworzenie obiektu usługi przy użyciu interfejsu wiersza polecenia platformy Azure
Użyj poniższych przykładów Azure CLI, aby utworzyć lub pobrać poświadczenia tajne klienta.
Użyj następującego polecenia, aby utworzyć jednostkę usługi i skonfigurować jej dostęp do zasobów platformy Azure:
az ad sp create-for-rbac \
--name <your application name> \
--role Contributor \
--scopes /subscriptions/mySubscriptionID
To polecenie zwraca wartość podobną do następujących danych wyjściowych:
{
"appId": "generated-app-ID",
"displayName": "dummy-app-name",
"name": "http://dummy-app-name",
"password": "random-password",
"tenant": "tenant-ID"
}
Użyj następującego polecenia, aby utworzyć zasadę usługi wraz z certyfikatem. Zanotuj ścieżkę/lokalizację tego certyfikatu.
az ad sp create-for-rbac \
--name <your application name> \
--role Contributor \
--cert <certificate name> \
--create-cert
Sprawdź zwrócone poświadczenia i zanotuj następujące informacje:
-
AZURE\_CLIENT\_IDdla identyfikatora appId. - dla hasła.
AZURE\_TENANT\_IDdla dzierżawcy.
Poświadczenie tajnego klucza klienta
To poświadczenie uwierzytelnia utworzonego principala usługi za pomocą sekretu klienta (hasła). W tym przykładzie pokazano uwierzytelnianie SecretClient z biblioteki klienta azure-security-keyvault-secrets przy użyciu polecenia 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();
Uwierzytelnienie certyfikatu klienta
To poświadczenie uwierzytelnia utworzoną jednostkę usługi za pomocą certyfikatu klienta. W tym przykładzie pokazano uwierzytelnianie SecretClient z biblioteki klienta azure-security-keyvault-secrets przy użyciu polecenia ClientSecretCredential.
/**
* 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();
Następne kroki
W tym artykule opisano uwierzytelnianie za pośrednictwem jednostki usługi. Ta forma uwierzytelniania jest jednym z wielu sposobów uwierzytelniania w zestawie Azure SDK dla języka Java. W poniższych artykułach opisano inne sposoby:
- Uwierzytelnianie platformy Azure w środowiskach deweloperskich
- Uwierzytelnianie aplikacji hostowanych na platformie Microsoft Azure
- Uwierzytelnianie przy użyciu poświadczeń użytkownika
Jeśli wystąpią problemy związane z uwierzytelnieniem jednostki usługi, zobacz Rozwiązywanie problemów z uwierzytelnieniem jednostki usługi.
Po opanowaniu uwierzytelniania zobacz Konfigurowanie rejestrowania w Azure SDK dla języka Java, aby uzyskać informacje na temat funkcjonalności rejestrowania udostępnianych przez SDK.