Delen via


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

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:

  1. 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..
  2. 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:

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.