Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Stellen Sie Verbindungen zu Azure- und nicht-Microsoft-Diensten für Dapr-Komponenten sicher, indem Sie verwaltete Identitäten oder Azure Key Vault Geheimnisspeicher verwenden.
Bevor Sie beginnen, erfahren Sie mehr über die angebotene Unterstützung für Dapr-Komponenten.
Empfehlungen
Für die sicherste Verbindung wird empfohlen, Azure Komponenten zu verwenden, die nach Möglichkeit verwaltete Identitätsunterstützung bieten. Verwenden Sie Azure Key Vault Geheimnisspeicher nur, wenn die verwaltete Identitätsauthentifizierung nicht unterstützt wird.
| Diensttyp | Empfehlung |
|---|---|
| Azure Komponente mit verwalteter Identitätsunterstützung | Verwenden Sie den Flow für verwaltete Identitäten (empfohlen) |
| Azure Komponente ohne Unterstützung für verwaltete Identitäten | Verwenden Sie ein Azure Key Vault Secret Store |
| Komponenten ohne Azure | Verwenden Sie einen geheimen Speicher von Azure Key Vault |
Verwaltete Identität verwenden (empfohlen)
Für in Azure gehostete Dienste kann Dapr die verwaltete Identität der bereichsbezogenen Container-Apps verwenden, um sich beim Back-End-Dienstanbieter zu authentifizieren. Wenn Sie eine verwaltete Identität verwenden, müssen Sie keine Geheimnisinformationen in ein Komponentenmanifest einschließen. Die Verwendung verwalteter Identitäten wird empfohlen, da die Speicherung vertraulicher Eingaben in Komponenten dadurch vermieden wird und keine Verwaltung eines Geheimnisspeichers erforderlich ist.
Hinweis
Das Metadatenfeld azureClientId (die Client-ID der verwalteten Identität) ist für jede Komponente erforderlich, die sich mit einer benutzerseitig zugewiesenen verwalteten Identität authentifiziert.
Verwenden einer Dapr-Komponentenreferenz für geheimen Speicher
Wenn Sie Dapr-Komponenten für nicht Entra ID aktivierte Dienste oder Komponenten erstellen, die keine verwaltete Identitätsauthentifizierung unterstützen, erfordern bestimmte Metadatenfelder vertrauliche Eingabewerte. Rufen Sie bei diesem Ansatz diese Geheimnisse ab, indem Sie auf eine vorhandene Dapr-Geheimnisspeicherkomponente verweisen, die sicher auf Geheimnisinformationen zugreift.
So richten Sie einen Verweis ein:
- Erstellen Sie eine Dapr-Geheimnisspeicherkomponente mit dem Azure Container Apps-Schema. Der Komponententyp für alle unterstützten Dapr-Geheimspeicher beginnt mit
secretstores. - Erstellen Sie zusätzliche Komponenten (nach Bedarf), die auf die Von Ihnen erstellte Dapr-Komponente für den geheimen Speicher verweisen , um die Eingabe vertraulicher Metadaten abzurufen.
Erstellen einer Dapr-Komponente für den geheimen Speicher
Beim Erstellen einer Geheimspeicherkomponente in Azure Container Apps können Sie vertrauliche Informationen im Metadatenabschnitt auf eine der folgenden Arten bereitstellen:
- Verwenden Sie für einen Azure Key Vault geheimen Speicher die verwaltete Identität, um die Verbindung herzustellen.
- Verwenden Sie für Nicht-Azure-Geheimnisse plattformverwaltete Kubernetes-Geheimnisse, die direkt als Teil des Komponentenmanifests definiert sind.
Azure Key Vault geheimen Speicher
Das folgende Komponentenschema zeigt die einfachste Konfiguration des geheimen Speichers mithilfe eines Azure Key Vault geheimen Speichers.
publisher-app und subscriber-app sind so konfiguriert, dass ein System oder eine vom Benutzer zugewiesene verwaltete Identität mit entsprechenden Berechtigungen für die Azure Key Vault Instanz vorhanden ist.
componentType: secretstores.azure.keyvault
version: v1
metadata:
- name: vaultName
value: [your_keyvault_name]
- name: azureEnvironment
value: "AZUREPUBLICCLOUD"
- name: azureClientId # Only required for authenticating user-assigned managed identity
value: [your_managed_identity_client_id]
scopes:
- publisher-app
- subscriber-app
Plattformseitig verwaltete Kubernetes-Geheimnisse
Als Alternative zu Kubernetes geheimen Schlüsseln, lokalen Umgebungsvariablen und lokalen Dapr-Dateispeichern bietet Azure Container Apps einen plattformverwalteten Ansatz zum Erstellen und Verwenden von Kubernetes-Geheimschlüsseln. Dieser Ansatz kann verwendet werden, um eine Verbindung mit nicht Azure Diensten herzustellen. Oder in Entwicklungs-/Testszenarien kann sie zum schnellen Bereitstellen von Komponenten über die CLI verwendet werden, ohne einen geheimen Speicher oder eine verwaltete Identität einzurichten.
Diese Komponentenkonfiguration definiert den vertraulichen Wert als Geheimnisparameter, auf den im Metadatenabschnitt verwiesen werden kann.
componentType: secretstores.azure.keyvault
version: v1
metadata:
- name: vaultName
value: [your_keyvault_name]
- name: azureEnvironment
value: "AZUREPUBLICCLOUD"
- name: azureTenantId
value: "[your_tenant_id]"
- name: azureClientId
value: "[your_client_id]"
- name: azureClientSecret
secretRef: azClientSecret
secrets:
- name: azClientSecret
value: "[your_client_secret]"
scopes:
- publisher-app
- subscriber-app
Referenzkomponenten für den geheimen Speicher von Dapr
Nachdem Sie einen Dapr-Geheimnisspeicher mit einem der oben genannten Ansätze erstellt haben, können Sie aus anderen Dapr-Komponenten in derselben Umgebung auf diesen Geheimnisspeicher verweisen. Im folgenden Beispiel wird die Verwendung von der Microsoft Entra ID Authentifizierung veranschaulicht.
componentType: pubsub.azure.servicebus.queue
version: v1
secretStoreComponent: "[your_secret_store_name]"
metadata:
- name: namespaceName
# Required when using Azure Authentication.
# Must be a fully-qualified domain name
value: "[your_servicebus_namespace.servicebus.windows.net]"
- name: azureTenantId
value: "[your_tenant_id]"
- name: azureClientId
value: "[your_client_id]"
- name: azureClientSecret
secretRef: azClientSecret
scopes:
- publisher-app
- subscriber-app