Konfigurieren einer benutzerseitig zugewiesenen verwalteten Identität, um einem externen Identitätsanbieter zu vertrauen
In diesem Artikel wird beschrieben, wie Sie Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität in Microsoft Entra ID verwalten. Mit den Anmeldeinformationen einer Verbundidentität wird eine Vertrauensstellung zwischen einer benutzerseitig zugewiesene verwaltete Identität und einem externen Identitätsanbieter (Identity Provider, IdP) erstellt. Das Konfigurieren von Anmeldeinformationen einer Verbundidentität für eine systemseitig zugewiesene verwaltete Identität wird nicht unterstützt.
Nachdem Sie Ihre benutzerseitig zugewiesene verwaltete Identität so konfiguriert haben, dass sie einem externen IdP vertraut, konfigurieren Sie Ihre externe Softwareworkload so, dass sie ein Token des externen IdP gegen ein Zugriffstoken von Microsoft Identity Platform austauscht. Die externe Workload verwendet das Zugriffstoken, um auf geschützte Microsoft Entra-Ressourcen zuzugreifen, ohne Geheimnisse verwalten zu müssen (in unterstützten Szenarien). Weitere Informationen zum Workflow für den Tokenaustausch finden Sie im Artikel zum Identitätsverbund für Workloads.
In diesem Artikel erfahren Sie, wie Sie Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität erstellen, auflisten und löschen.
Wichtige Überlegungen und Einschränkungen
Einer anwendungs- oder benutzerseitig zugewiesenen verwalteten Identität können maximal 20 Anmeldeinformationen für eine Verbundidentität hinzugefügt werden.
Beim Konfigurieren von Anmeldeinformationen für eine Verbundidentität müssen mehrere wichtige Informationen angegeben werden:
issuer und subject sind die wichtigsten Informationen, die zum Einrichten der Vertrauensstellung erforderlich sind. Die Kombination von
issuer
undsubject
muss für die App eindeutig sein. Wenn die externe Softwareworkload Microsoft Identity Platform zum Austausch des externen Tokens gegen ein Zugriffstoken auffordert, werden die Werte von issuer und subject der Anmeldeinformationen für die Verbundidentität anhand der Ansprücheissuer
undsubject
überprüft, die im externen Token bereitgestellt werden. Wenn diese Überprüfung erfolgreich ist, stellt Microsoft Identity Platform ein Zugriffstoken für die externe Softwareworkload aus.issuer ist die URL des externen Identitätsanbieters und muss mit dem Anspruch
issuer
des ausgetauschten externen Tokens übereinstimmen. Erforderlich. Wenn derissuer
-Anspruch führende oder nachfolgende Leerzeichen im Wert enthält, wird der Tokenaustausch blockiert. Für dieses Feld gilt eine Zeichenbeschränkung von 600 Zeichen.subject ist der Bezeichner der externen Softwareworkload und muss mit dem Anspruch
sub
subject
des ausgetauschten externen Tokens übereinstimmen. subject hat kein festes Format, da jeder IdP sein eigenes verwendet – manchmal eine GUID, manchmal einen durch Doppelpunkt getrennten Bezeichner, manchmal beliebige Zeichenfolgen. Für dieses Feld gilt eine Zeichenbeschränkung von 600 Zeichen.Wichtig
Die Werte für die Einstellung subject müssen exakt mit der Konfiguration in der GitHub-Workflowkonfiguration übereinstimmen. Andernfalls lehnt Microsoft Identity Platform den Austausch für ein Zugriffstoken ab, nachdem das eingehende externe Token überprüft wurde. Es wird kein Fehler angezeigt, der Austausch schlägt ohne Fehlermeldung fehl.
Wichtig
Wenn Sie versehentlich die falschen externen Workloadinformationen in der Einstellung subject hinzufügen, werden die Anmeldeinformationen für die Verbundidentität ohne Fehler erfolgreich erstellt. Der Fehler wird erst angezeigt, wenn der Tokenaustausch fehlschlägt.
audiences listet die Zielgruppen auf, die im externen Token angezeigt werden können. Erforderlich. Sie müssen einen einzelnen Zielgruppenwert hinzufügen, der maximal 600 Zeichen lang sein darf. Der empfohlene Wert lautet „api://AzureADTokenExchange“. Es gibt an, was Microsoft Identity Platform im Anspruch
aud
im eingehenden Token akzeptieren muss.name ist der eindeutige Bezeichner für die Anmeldeinformationen für eine Verbundidentität. Erforderlich. Das Feld kann 3–120 Zeichen enthalten und muss URLs akzeptieren können. Alphanumerische Zeichen, Bindestriche und Unterstriche werden unterstützt, aber das erste Zeichen muss alphanumerisch sein. Nach der Erstellung ist das Feld unveränderlich.
description ist die vom Benutzer bereitgestellte Beschreibung der Anmeldeinformationen für eine Verbundidentität. Optional. Die Beschreibung wird von Microsoft Entra ID weder überprüft noch validiert. Dieses Feld darf maximal 600 Zeichen enthalten.
Platzhalterzeichen werden in keinem Eigenschaftswert für Anmeldeinformationen für Verbundidentitäten unterstützt.
Informationen zu unterstützten Regionen, zum Zeitraum der Weitergabe von aktualisierten Anmeldeinformationen für Verbundidentitäten, zu unterstützten Ausstellern und vielem mehr finden Sie unter Wichtige Überlegungen und Einschränkungen zu Anmeldeinformationen für Verbundidentitäten.
Voraussetzungen
- Wenn Sie nicht mit verwalteten Identitäten für Azure-Ressourcen vertraut sind, helfen Ihnen die Informationen in der Übersicht weiter. Machen Sie sich den Unterschied zwischen einer vom System und einer vom Benutzer zugewiesenen verwalteten Identität bewusst.
- Wenn Sie noch kein Azure-Konto haben, sollten Sie sich für ein kostenloses Konto registrieren, bevor Sie fortfahren.
- Ermitteln Sie die Informationen für Ihren externen IdP und die Softwareworkload, die Sie in den folgenden Schritten benötigen.
- Um eine benutzerseitig zugewiesene verwaltete Identität zu erstellen und Anmeldeinformationen für Verbundidentitäten zu konfigurieren, benötigt Ihr Konto die Rollenzuweisung Mitwirkender oder Besitzer.
- Erstellen einer benutzerseitig zugewiesenen verwalteten Identität
- Suchen Sie nach dem Namen der benutzerseitig zugewiesenen verwalteten Identität, die Sie für die folgenden Schritte benötigen.
Konfigurieren von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Wechseln Sie im Microsoft Entra Admin Center zu der benutzerseitig zugewiesenen verwalteten Identität, die Sie erstellt haben. Wählen Sie in der linken Navigationsleiste unter Einstellungen die Option Verbundanmeldeinformationen und dann Anmeldeinformationen hinzufügen aus.
Wählen Sie in der Dropdownliste Szenario für Verbundanmeldeinformationen Ihr Szenario aus.
GitHub Actions für die Bereitstellung von Azure-Ressourcen
Führen Sie die folgenden Schritte aus, um eine Verbundidentität für GitHub-Aktionen hinzuzufügen:
Wählen Sie für Entitätstyp die Option Umgebung, Branch, Pull Request oder Tag aus, und geben Sie den Wert an. Die Werte müssen genau mit der Konfiguration im GitHub-Workflow übereinstimmen. Weitere Informationen finden Sie in den Beispielen.
Fügen Sie einen Namen für die Verbundanmeldeinformationen hinzu.
Die Felder Aussteller, Zielgruppen und Antragstellerkennung werden basierend auf den eingegebenen Werten automatisch ausgefüllt.
Wählen Sie Hinzufügen aus, um die Verbundanmeldeinformationen zu konfigurieren.
Verwenden Sie die folgenden Werte Ihrer verwalteten Microsoft Entra-Identität für Ihren GitHub-Workflow:
AZURE_CLIENT_ID
: Die Client-ID der verwalteten IdentitätAZURE_SUBSCRIPTION_ID
: Die Abonnement-IDDer folgende Screenshot zeigt, wie Sie die ID der verwalteten Identität und die Abonnement-ID kopieren.
AZURE_TENANT_ID
: Die Verzeichnis- bzw. Mandanten-ID Erfahren Sie mehr zum Ermitteln Ihrer Microsoft Entra-Mandanten-ID.
Beispiele für Entitätstypen
Branchbeispiel
Für einen Workflow, der durch ein Push Request- oder Pull Request-Ereignis im Mainbranch ausgelöst wird:
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
Geben Sie Branch als Entitätstyp und „main“ als GitHub-Branchname an.
Umgebungsbeispiel
Für Aufträge, die an eine Umgebung namens „production“ gebunden sind:
on:
push:
branches:
- main
jobs:
deployment:
runs-on: ubuntu-latest
environment: production
steps:
- name: deploy
# ...deployment-specific steps
Geben Sie Umgebung als Entitätstyp und „production“ als GitHub-Umgebungsnamen an.
Tagbeispiel
Beispiel eines Workflows, der durch einen Push an das Tag mit dem Namen „v2“ ausgelöst wird:
on:
push:
# Sequence of patterns matched against refs/heads
branches:
- main
- 'mona/octocat'
- 'releases/**'
# Sequence of patterns matched against refs/tags
tags:
- v2
- v1.*
Geben Sie Tag als Entitätstyp und „v2“ als GitHub-Tagnamen an.
Pull Request-Beispiel
Geben Sie für einen Workflow, der durch ein Pull Request-Ereignis ausgelöst wird, Pull Request als Entitätstyp an.
Kubernetes für den Zugriff auf Azure-Ressourcen
Füllen Sie die Felder Clusteraussteller-URL, Namespace, Dienstkontoname und Name aus:
- Clusteraussteller-URL ist die OIDC-Aussteller-URL für den verwalteten Cluster oder die OIDC-Aussteller-URL für einen selbstverwalteten Cluster.
- Dienstkontoname ist der Name des Kubernetes-Dienstkontos, das eine Identität für Prozesse bereitstellt, die in einem Pod ausgeführt werden.
- Namespace ist der Namespace des Dienstkontos.
- Name ist der Name der Verbundanmeldeinformationen – dieser kann später nicht mehr geändert werden.
Wählen Sie Hinzufügen aus, um die Verbundanmeldeinformationen zu konfigurieren.
Andere
Wählen Sie im Dropdownmenü das Szenario Anderer Aussteller aus.
Geben Sie die folgenden Felder an (beispielsweise mithilfe einer in Google Cloud ausgeführten Softwareworkload):
- Name ist der Name der Verbundanmeldeinformationen – dieser kann später nicht mehr geändert werden.
- Antragsteller-ID: Muss mit dem Anspruch
sub
im Token übereinstimmen, das vom externen Identitätsanbieter ausgestellt wurde. In diesem Beispiel mit Google Cloud ist subject die eindeutige ID des Dienstkontos, das Sie verwenden möchten. - Zertifikataussteller: Muss mit dem Anspruch
iss
im Token übereinstimmen, das vom externen Identitätsanbieter ausgestellt wurde. Eine URL entsprechend der OIDC-Ermittlungsspezifikation. Microsoft Entra ID verwendet diese Aussteller-URL, um die erforderlichen Schlüssel zum Überprüfen des Tokens abzurufen. Für Google Cloud lautet der Aussteller "https://accounts.google.com".
Wählen Sie Hinzufügen aus, um die Verbundanmeldeinformationen zu konfigurieren.
Auflisten von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Wechseln Sie im Microsoft Entra Admin Center zu der benutzerseitig zugewiesenen verwalteten Identität, die Sie erstellt haben. Wählen Sie in der linken Navigationsleiste unter Einstellungen die Option Verbundanmeldeinformationen aus.
Die für diese benutzerseitig zugewiesene verwaltete Identität konfigurierten Anmeldeinformationen für Verbundidentitäten werden aufgelistet.
Löschen von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Wechseln Sie im Microsoft Entra Admin Center zu der benutzerseitig zugewiesenen verwalteten Identität, die Sie erstellt haben. Wählen Sie in der linken Navigationsleiste unter Einstellungen die Option Verbundanmeldeinformationen aus.
Die für diese benutzerseitig zugewiesene verwaltete Identität konfigurierten Anmeldeinformationen für Verbundidentitäten werden aufgelistet.
Wählen Sie zum Löschen spezifischer Anmeldeinformationen für eine Verbundidentität das Symbol Löschen für diese Anmeldeinformationen aus.
Voraussetzungen
- Wenn Sie nicht mit verwalteten Identitäten für Azure-Ressourcen vertraut sind, helfen Ihnen die Informationen in der Übersicht weiter. Machen Sie sich den Unterschied zwischen einer vom System und einer vom Benutzer zugewiesenen verwalteten Identität bewusst.
- Wenn Sie noch kein Azure-Konto haben, sollten Sie sich für ein kostenloses Konto registrieren, bevor Sie fortfahren.
- Ermitteln Sie die Informationen für Ihren externen IdP und die Softwareworkload, die Sie in den folgenden Schritten benötigen.
- Um eine benutzerseitig zugewiesene verwaltete Identität zu erstellen und Anmeldeinformationen für Verbundidentitäten zu konfigurieren, benötigt Ihr Konto die Rollenzuweisung Mitwirkender oder Besitzer.
- Erstellen einer benutzerseitig zugewiesenen verwalteten Identität
- Suchen Sie nach dem Namen der benutzerseitig zugewiesenen verwalteten Identität, die Sie für die folgenden Schritte benötigen.
Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.
Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.
Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.
Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.
Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.
Konfigurieren von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Führen Sie den Befehl az identity federated-credential create aus, um neue Anmeldeinformationen einer Verbundidentität für Ihre benutzerseitig zugewiesene verwaltete Identität (angegeben über den Namen) zu erstellen. Geben Sie die Parameter name, issuer und subject und weitere Parameter an.
az login
# set variables
location="centralus"
subscription="{subscription-id}"
rg="fic-test-rg"
# user assigned identity name
uaId="fic-test-ua"
# federated identity credential name
ficId="fic-test-fic-name"
# create prerequisites if required.
# otherwise make sure that existing resources names are set in variables above
az account set --subscription $subscription
az group create --location $location --name $rg
az identity create --name $uaId --resource-group $rg --location $location --subscription $subscription
# Create/update a federated identity credential
az identity federated-credential create --name $ficId --identity-name $uaId --resource-group $rg --issuer 'https://aks.azure.com/issuerGUID' --subject 'system:serviceaccount:ns:svcaccount' --audiences 'api://AzureADTokenExchange'
Auflisten von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Führen Sie den Befehl az identity federated-credential list aus, um alle Anmeldeinformationen für Verbundidentitäten aufzulisten, die für eine benutzerseitig zugewiesene verwaltete Identität konfiguriert sind:
az login
# Set variables
rg="fic-test-rg"
# User assigned identity name
uaId="fic-test-ua"
# Read all federated identity credentials assigned to the user-assigned managed identity
az identity federated-credential list --identity-name $uaId --resource-group $rg
Abrufen von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Führen Sie den Befehl az identity federated-credential show aus, um Anmeldeinformationen für eine Verbundidentität (nach ID) anzuzeigen:
az login
# Set variables
rg="fic-test-rg"
# User assigned identity name
uaId="fic-test-ua"
# Federated identity credential name
ficId="fic-test-fic-name"
# Show the federated identity credential
az identity federated-credential show --name $ficId --identity-name $uaId --resource-group $rg
Löschen von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Führen Sie den Befehl az identity federated-credential delete aus, um Anmeldeinformationen für Verbundidentitäten zu löschen, die für eine benutzerseitig zugewiesene verwaltete Identität vorhanden sind.
az login
# Set variables
# in Linux shell remove $ from set variable statement
$rg="fic-test-rg"
# User assigned identity name
$uaId="fic-test-ua"
# Federated identity credential name
$ficId="fic-test-fic-name"
az identity federated-credential delete --name $ficId --identity-name $uaId --resource-group $rg
Voraussetzungen
- Wenn Sie nicht mit verwalteten Identitäten für Azure-Ressourcen vertraut sind, helfen Ihnen die Informationen in der Übersicht weiter. Machen Sie sich den Unterschied zwischen einer vom System und einer vom Benutzer zugewiesenen verwalteten Identität bewusst.
- Wenn Sie noch kein Azure-Konto haben, sollten Sie sich für ein kostenloses Konto registrieren, bevor Sie fortfahren.
- Ermitteln Sie die Informationen für Ihren externen IdP und die Softwareworkload, die Sie in den folgenden Schritten benötigen.
- Um eine benutzerseitig zugewiesene verwaltete Identität zu erstellen und Anmeldeinformationen für Verbundidentitäten zu konfigurieren, benötigt Ihr Konto die Rollenzuweisung Mitwirkender oder Besitzer.
- Die Beispielskripts können auf zwei Arten ausgeführt werden:
- Verwenden Sie Azure Cloud Shell, was Sie über die Schaltfläche Try it (Testen) in der rechten oberen Ecke der Codeblöcke öffnen können.
- Führen Sie Skripts lokal mit Azure PowerShell aus, wie im nächsten Abschnitt beschrieben.
- Erstellen einer benutzerseitig zugewiesenen verwalteten Identität
- Suchen Sie nach dem Namen der benutzerseitig zugewiesenen verwalteten Identität, die Sie für die folgenden Schritte benötigen.
Lokales Konfigurieren von Azure PowerShell
So verwenden Sie Azure PowerShell lokal für diesen Artikel anstelle von Cloud Shell:
Installieren Sie die aktuelle Version von Azure PowerShell, sofern noch nicht geschehen.
Melden Sie sich bei Azure an.
Connect-AzAccount
Installieren Sie die neueste Version von PowerShellGet.
Install-Module -Name PowerShellGet -AllowPrerelease
Sie müssen die aktuelle PowerShell-Sitzung unter Umständen beenden (
Exit
), nachdem Sie diesen Befehl für den nächsten Schritt ausgeführt haben.Installieren Sie die das Modul
Az.ManagedServiceIdentity
, um die Vorgänge für benutzerseitig zugewiesene verwaltete Identitäten in diesem Artikel auszuführen.Install-Module -Name Az.ManagedServiceIdentity
Konfigurieren von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Führen Sie den Befehl New-AzFederatedIdentityCredentials aus, um neue Anmeldeinformationen für Verbundidentitäten für Ihre benutzerseitig zugewiesene verwaltete Identität (angegeben über den Namen) zu erstellen. Geben Sie die Parameter name, issuer und subject und weitere Parameter an.
New-AzFederatedIdentityCredentials -ResourceGroupName azure-rg-test -IdentityName uai-pwsh01 `
-Name fic-pwsh01 -Issuer "https://kubernetes-oauth.azure.com" -Subject "system:serviceaccount:ns:svcaccount"
Auflisten von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Führen Sie den Befehl Get-AzFederatedIdentityCredentials aus, um alle Anmeldeinformationen für Verbundidentitäten aufzulisten, die für eine benutzerseitig zugewiesene verwaltete Identität konfiguriert sind:
Get-AzFederatedIdentityCredentials -ResourceGroupName azure-rg-test -IdentityName uai-pwsh01
Abrufen von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Führen Sie den Befehl Get-AzFederatedIdentityCredentials aus, um Anmeldeinformationen für Verbundidentitäten (nach Name) anzuzeigen:
Get-AzFederatedIdentityCredentials -ResourceGroupName azure-rg-test -IdentityName uai-pwsh01 -Name fic-pwsh01
Löschen von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Führen Sie den Befehl Remove-AzFederatedIdentityCredentials aus, um Anmeldeinformationen für Verbundidentitäten zu löschen, die für eine benutzerseitig zugewiesene Identität vorhanden sind.
Remove-AzFederatedIdentityCredentials -ResourceGroupName azure-rg-test -IdentityName uai-pwsh01 -Name fic-pwsh01
Voraussetzungen
- Wenn Sie nicht mit verwalteten Identitäten für Azure-Ressourcen vertraut sind, helfen Ihnen die Informationen in der Übersicht weiter. Machen Sie sich den Unterschied zwischen einer vom System und einer vom Benutzer zugewiesenen verwalteten Identität bewusst.
- Wenn Sie noch kein Azure-Konto haben, sollten Sie sich für ein kostenloses Konto registrieren, bevor Sie fortfahren.
- Ermitteln Sie die Informationen für Ihren externen IdP und die Softwareworkload, die Sie in den folgenden Schritten benötigen.
- Um eine benutzerseitig zugewiesene verwaltete Identität zu erstellen und Anmeldeinformationen für Verbundidentitäten zu konfigurieren, benötigt Ihr Konto die Rollenzuweisung Mitwirkender oder Besitzer.
- Erstellen einer benutzerseitig zugewiesenen verwalteten Identität
- Suchen Sie nach dem Namen der benutzerseitig zugewiesenen verwalteten Identität, die Sie für die folgenden Schritte benötigen.
Erstellung und Bearbeitung von Vorlagen
Resource Manager-Vorlagen helfen Ihnen, neue oder geänderte Ressourcen bereitzustellen, die durch eine Azure-Ressourcengruppe definiert sind. Für die Vorlagenbearbeitung und -bereitstellung sind mehrere Optionen sowohl lokal als auch portalbasiert verfügbar. Ihre Möglichkeiten:
- Verwenden einer benutzerdefinierten Vorlage vom Azure Marketplace zum Erstellen einer ganz neuen Vorlage oder einer Vorlage, die auf einer vorhandenen, oft verwendeten Vorlage oder einer Schnellstartvorlage basiert.
- Leiten Sie von einer vorhandenen Ressourcengruppe ab, indem Sie eine Vorlage exportieren. Sie können sie entweder aus der ursprünglichen Bereitstellung oder aus dem aktuellen Zustand der Bereitstellung exportieren.
- Verwenden eines lokalen JSON-Editors (z. B. VS Code) und anschließendes Hochladen und Bereitstellen mithilfe von PowerShell oder der Azure-Befehlszeilenschnittstelle.
- Verwenden des Azure-Ressourcengruppenprojekts von Visual Studio für das Erstellen und Bereitstellen einer Vorlage.
Konfigurieren von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Anmeldeinformationen für Verbundidentitäten und die übergeordnete benutzerseitig zugewiesene Identität können anhand der nachstehenden Vorlage erstellt oder aktualisiert werden. Sie können ARM-Vorlagen über das Azure-Portal bereitstellen.
Alle Vorlagenparameter müssen angegeben werden.
Der Name für die Anmeldeinformationen einer Verbundidentität kann 3 bis 120 Zeichen lang sein. Der Name muss alphanumerisch sein und kann Bindestriche und Unterstriche enthalten. Das erste Zeichen muss alphanumerisch sein.
Bei Anmeldeinformationen für Verbundidentitäten müssen Sie genau eine Zielgruppe hinzufügen. Die Zielgruppe wird während des Tokenaustauschs überprüft. Verwenden Sie als Standardwert „api://AzureADTokenExchange“.
Für Vorgänge zum Auflisten, Abrufen und Löschen stehen keine Vorlagen zur Verfügung. Führen Sie diese Vorgänge mit der Azure CLI aus. Standardmäßig werden alle untergeordneten Anmeldeinformationen für Verbundidentitäten parallel erstellt. Dies löst eine Logik zur Parallelitätserkennung aus und führt dazu, dass die Bereitstellung mit dem HTTP-Statuscode 409 aufgrund eines Konflikts fehlschlägt. Für die sequenzielle Erstellung geben Sie mithilfe der Eigenschaft dependsOn eine Kette von Abhängigkeiten an.
Stellen Sie sicher, dass bei jeder Art von Automatisierung die Anmeldedaten für Verbundidentitäten unter derselben übergeordneten Identität nacheinander erstellt werden. Anmeldeinformationen für Verbundidentitäten, die für verschiedene verwaltete Identitäten gelten, können ohne Einschränkungen parallel erstellt werden.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {},
"parameters": {
"location": {
"type": "string",
"defaultValue": "westcentralus",
"metadata": {
"description": "Location for identities resources. FIC should be enabled in this region."
}
},
"userAssignedIdentityName": {
"type": "string",
"defaultValue": "FIC_UA",
"metadata": {
"description": "Name of the User Assigned identity (parent identity)"
}
},
"federatedIdentityCredential": {
"type": "string",
"defaultValue": "testCredential",
"metadata": {
"description": "Name of the Federated Identity Credential"
}
},
"federatedIdentityCredentialIssuer": {
"type": "string",
"defaultValue": "https://aks.azure.com/issuerGUID",
"metadata": {
"description": "Federated Identity Credential token issuer"
}
},
"federatedIdentityCredentialSubject": {
"type": "string",
"defaultValue": "system:serviceaccount:ns:svcaccount",
"metadata": {
"description": "Federated Identity Credential token subject"
}
},
"federatedIdentityCredentialAudience": {
"type": "string",
"defaultValue": " api://AzureADTokenExchange",
"metadata": {
"description": "Federated Identity Credential audience. Single value is only supported."
}
}
},
"resources": [
{
"type": "Microsoft.ManagedIdentity/userAssignedIdentities",
"apiVersion": "2018-11-30",
"name": "[parameters('userAssignedIdentityName')]",
"location": "[parameters('location')]",
"tags": {
"firstTag": "ficTest"
},
"resources": [
{
"type": "Microsoft.ManagedIdentity/userAssignedIdentities/federatedIdentityCredentials",
"apiVersion": "2022-01-31-PREVIEW",
"name": "[concat(parameters('userAssignedIdentityName'), '/', parameters('federatedIdentityCredential'))]",
"dependsOn": [
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities', parameters('userAssignedIdentityName'))]"
],
"properties": {
"issuer": "[parameters('federatedIdentityCredentialIssuer')]",
"subject": "[parameters('federatedIdentityCredentialSubject')]",
"audiences": [
"[parameters('federatedIdentityCredentialAudience')]"
]
}
}
]
}
]
}
Voraussetzungen
- Wenn Sie nicht mit verwalteten Identitäten für Azure-Ressourcen vertraut sind, helfen Ihnen die Informationen in der Übersicht weiter. Machen Sie sich den Unterschied zwischen einer vom System und einer vom Benutzer zugewiesenen verwalteten Identität bewusst.
- Wenn Sie noch kein Azure-Konto haben, sollten Sie sich für ein kostenloses Konto registrieren, bevor Sie fortfahren.
- Ermitteln Sie die Informationen für Ihren externen IdP und die Softwareworkload, die Sie in den folgenden Schritten benötigen.
- Um eine benutzerseitig zugewiesene verwaltete Identität zu erstellen und Anmeldeinformationen für Verbundidentitäten zu konfigurieren, benötigt Ihr Konto die Rollenzuweisung Mitwirkender oder Besitzer.
- Sie können alle Befehle in diesem Artikel in der Cloud oder lokal ausführen:
- Verwenden Sie für die Ausführung in der Cloud Azure Cloud Shell.
- Installieren Sie für die lokale Ausführung curl und die Azure CLI.
- Erstellen einer benutzerseitig zugewiesenen verwalteten Identität
- Suchen Sie nach dem Namen der benutzerseitig zugewiesenen verwalteten Identität, die Sie für die folgenden Schritte benötigen.
Abrufen eines Bearerzugriffstokens
Wenn Sie die Befehle lokal ausführen, melden Sie sich über die Azure-Befehlszeilenschnittstelle bei Azure an.
az login
Rufen Sie mit az account get-access-token ein Zugriffstoken ab.
az account get-access-token
Konfigurieren von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Erstellen oder aktualisieren Sie Anmeldeinformationen für eine Verbundidentität für die angegebene benutzerseitig zugewiesene verwaltete Identität.
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/provider
s/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/federatedIdenti
tyCredentials/<FEDERATED IDENTITY CREDENTIAL NAME>?api-version=2022-01-31-preview' -X PUT -d '{"properties": "{ "properties": { "issuer": "<ISSUER>", "subject": "<SUBJECT>", "audiences": [ "api://AzureADTokenExchange" ] }}"}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/federatedIdentityCredentials/<FEDERATED IDENTITY CREDENTIAL NAME>?api-version=2022-01-31-preview
{
"properties": {
"issuer": "https://oidc.prod-aks.azure.com/IssuerGUID",
"subject": "system:serviceaccount:ns:svcaccount",
"audiences": [
"api://AzureADTokenExchange"
]
}
}
Anforderungsheader
Anforderungsheader | BESCHREIBUNG |
---|---|
Content-Type | Erforderlich. Legen Sie diese Option auf application/json fest. |
Autorisierung | Erforderlich. Legen Sie diese Option auf ein gültiges Bearer -Zugriffstoken fest. |
Anforderungstext
Name | BESCHREIBUNG |
---|---|
properties.audiences | Erforderlich. Die Liste der Zielgruppen, die im ausgestellten Token angezeigt werden können. |
properties.issuer | Erforderlich. Die URL des Ausstellers, der als vertrauenswürdig eingestuft werden soll. |
properties.subject | Erforderlich. Der eindeutige Bezeichner der externen Identität. |
Auflisten von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Listen Sie alle Anmeldeinformationen für Verbundidentitäten für die angegebene benutzerseitig zugewiesene verwaltete Identität auf.
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/<RESOURCE NAME>/federatedIdentityCredentials?api-version=2022-01-31-preview' -H "Content-Type: application/json" -X GET -H "Authorization: Bearer <ACCESS TOKEN>"
GET
https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/<RESOURCE NAME>/federatedIdentityCredentials?api-version=2022-01-31-preview
Anforderungsheader
Anforderungsheader | BESCHREIBUNG |
---|---|
Content-Type | Erforderlich. Legen Sie diese Option auf application/json fest. |
Autorisierung | Erforderlich. Legen Sie diese Option auf ein gültiges Bearer -Zugriffstoken fest. |
Abrufen von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Rufen Sie die Anmeldeinformationen für eine Verbundidentität ab für die angegebene benutzerseitig zugewiesene verwaltete Identität.
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/<RESOURCE NAME>/federatedIdentityCredentials/<FEDERATED IDENTITY CREDENTIAL RESOURCENAME>?api-version=2022-01-31-preview' -X GET -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
GET
https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/<RESOURCE NAME>/federatedIdentityCredentials/<FEDERATED IDENTITY CREDENTIAL RESOURCENAME>?api-version=2022-01-31-preview
Anforderungsheader
Anforderungsheader | BESCHREIBUNG |
---|---|
Content-Type | Erforderlich. Legen Sie diese Option auf application/json fest. |
Autorisierung | Erforderlich. Legen Sie diese Option auf ein gültiges Bearer -Zugriffstoken fest. |
Löschen von Anmeldeinformationen einer Verbundidentität für eine benutzerseitig zugewiesene verwaltete Identität
Löschen Sie die Anmeldeinformationen für eine Verbundidentitätfür die angegebene benutzerseitig zugewiesene verwaltete Identität.
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/<RESOURCE NAME>/federatedIdentityCredentials/<FEDERATED IDENTITY CREDENTIAL RESOURCENAME>?api-version=2022-01-31-preview' -X DELETE -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
DELETE
https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/<RESOURCE NAME>/federatedIdentityCredentials/<FEDERATED IDENTITY CREDENTIAL RESOURCENAME>?api-version=2022-01-31-preview
Anforderungsheader
Anforderungsheader | BESCHREIBUNG |
---|---|
Content-Type | Erforderlich. Legen Sie diese Option auf application/json fest. |
Autorisierung | Erforderlich. Legen Sie diese Option auf ein gültiges Bearer -Zugriffstoken fest. |
Nächste Schritte
- Informationen zum erforderlichen Format von JWTs, die von externen Identitätsanbietern erstellt werden, finden Sie unter Assertionsformat.