Verbinding maken met andere Azure- of externe services via Dapr-onderdelen
Maak veilig verbindingen met Azure- en services van derden voor Dapr-onderdelen met behulp van beheerde identiteit of Azure Key Vault-geheime archieven.
Voordat u aan de slag gaat, vindt u meer informatie over de aangeboden ondersteuning voor Dapr-onderdelen.
Aanbevelingen
Waar mogelijk wordt u aangeraden Azure-onderdelen te gebruiken die ondersteuning bieden voor beheerde identiteiten voor de veiligste verbinding. Gebruik Azure Key Vault-geheimarchieven alleen wanneer verificatie van beheerde identiteiten niet wordt ondersteund.
Servicetype | Aanbeveling |
---|---|
Azure-onderdeel met ondersteuning voor beheerde identiteiten | De stroom voor beheerde identiteiten gebruiken (aanbevolen) |
Azure-onderdeel zonder ondersteuning voor beheerde identiteit | Een Azure Key Vault-geheimarchief gebruiken |
Niet-Azure-onderdelen | Een Azure Key Vault-geheimarchief gebruiken |
Beheerde identiteit gebruiken (aanbevolen)
Voor door Azure gehoste services kan Dapr de beheerde identiteit van de scoped container-apps gebruiken om te verifiëren bij de back-endserviceprovider. Wanneer u beheerde identiteit gebruikt, hoeft u geen geheime informatie op te nemen in een onderdeelmanifest. Het gebruik van een beheerde identiteit wordt aanbevolen omdat het opslag van gevoelige invoer in onderdelen elimineert en geen geheimarchief hoeft te beheren.
Notitie
Het azureClientId
metagegevensveld (de client-id van de beheerde identiteit) is vereist voor elk onderdeel dat wordt geverifieerd met een door de gebruiker toegewezen beheerde identiteit.
Een naslaginformatie over een dapr-geheimarchiefonderdeel gebruiken
Wanneer u Dapr-onderdelen maakt voor services of onderdelen die geen ondersteuning bieden voor beheerde identiteitverificatie, zijn voor bepaalde metagegevensvelden gevoelige invoerwaarden vereist. Voor deze aanpak haalt u deze geheimen op door te verwijzen naar een bestaand Dapr-geheimarchiefonderdeel dat veilig toegang heeft tot geheime informatie.
Een verwijzing instellen:
- Maak een Dapr Secret Store-onderdeel met behulp van het Azure Container Apps-schema. Het onderdeeltype voor alle ondersteunde Dapr-geheime winkels begint met
secretstores.
. - Maak extra onderdelen (indien nodig) die verwijzen naar het Dapr Secret Store-onderdeel dat u hebt gemaakt om de gevoelige metagegevensinvoer op te halen.
Een Dapr-geheimarchiefonderdeel maken
Wanneer u een geheim archiefonderdeel maakt in Azure Container Apps, kunt u gevoelige informatie opgeven in de sectie metagegevens op een van de volgende manieren:
- Gebruik voor een Azure Key Vault-geheimarchief beheerde identiteit om de verbinding tot stand te brengen.
- Gebruik voor niet-Azure-geheimarchieven door het platform beheerde Kubernetes-geheimen die rechtstreeks zijn gedefinieerd als onderdeel van het onderdeelmanifest.
Geheimenarchieven van Azure Key Vault
In het volgende onderdeelschema ziet u de eenvoudigste configuratie van het geheimarchief met behulp van een Azure Key Vault-geheimarchief. publisher-app
en subscriber-app
zijn geconfigureerd voor beide een door het systeem of de gebruiker toegewezen beheerde identiteit met de juiste machtigingen voor het Azure Key Vault-exemplaar.
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
Door het platform beheerde Kubernetes-geheimen
Azure Container Apps biedt als alternatief voor Kubernetes-geheimen, lokale omgevingsvariabelen en dapr-geheimenarchieven voor lokale bestanden een platformbeheerde benadering voor het maken en gebruiken van Kubernetes-geheimen. Deze benadering kan worden gebruikt om verbinding te maken met niet-Azure-services of in ontwikkel-/testscenario's voor het snel implementeren van onderdelen via de CLI zonder een geheime opslag of beheerde identiteit in te stellen.
Deze onderdeelconfiguratie definieert de gevoelige waarde als een geheime parameter waarnaar kan worden verwezen vanuit de sectie metagegevens.
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
Referencing Dapr secret store components
Zodra u een Dapr-geheimarchief maakt met behulp van een van de vorige benaderingen, kunt u verwijzen naar het geheime archief van andere Dapr-onderdelen in dezelfde omgeving. In het volgende voorbeeld ziet u hoe u Entra ID-verificatie gebruikt.
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
Volgende stappen
Meer informatie over het instellen van tolerantie voor Dapr-onderdelen.