Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Nawiązywanie połączenia z innymi usługami platformy Azure lub innymi firmami za pośrednictwem składników języka Dapr

Bezpieczne ustanawianie połączeń z usługami platformy Azure i usługami innych firm dla składników języka Dapr przy użyciu tożsamości zarządzanej lub magazynów wpisów tajnych usługi Azure Key Vault.

Przed rozpoczęciem dowiedz się więcej o oferowanej obsłudze składników języka Dapr.

Zalecenia

Jeśli to możliwe, zaleca się użycie składników platformy Azure, które zapewniają obsługę tożsamości zarządzanej dla najbezpieczniejszego połączenia. Użyj magazynu wpisów tajnych usługi Azure Key Vault tylko wtedy, gdy uwierzytelnianie tożsamości zarządzanej nie jest obsługiwane.

Typ usługi Zalecenie
Składnik platformy Azure z obsługą tożsamości zarządzanej Korzystanie z przepływu tożsamości zarządzanej (zalecane)
Składnik platformy Azure bez obsługi tożsamości zarządzanej Korzystanie z magazynu wpisów tajnych usługi Azure Key Vault
Składniki spoza platformy Azure Korzystanie z magazynu wpisów tajnych usługi Azure Key Vault

W przypadku usług hostowanych na platformie Azure usługa Dapr może używać tożsamości zarządzanej aplikacji kontenera o określonym zakresie do uwierzytelniania u dostawcy usług zaplecza. W przypadku korzystania z tożsamości zarządzanej nie musisz dołączać informacji tajnych do manifestu składnika. Używanie tożsamości zarządzanej jest zalecane , ponieważ eliminuje przechowywanie poufnych danych wejściowych w składnikach i nie wymaga zarządzania magazynem wpisów tajnych.

Uwaga

Pole azureClientId metadanych (identyfikator klienta tożsamości zarządzanej) jest wymagane dla każdego składnika uwierzytelniającego się przy użyciu tożsamości zarządzanej przypisanej przez użytkownika.

Używanie odwołania do składnika magazynu wpisów tajnych dapr

Podczas tworzenia składników języka Dapr dla usług lub składników, które nie obsługują uwierzytelniania tożsamości zarządzanej, niektóre pola metadanych wymagają poufnych wartości wejściowych. W przypadku tego podejścia pobierz te wpisy tajne, odwołując się do istniejącego składnika magazynu wpisów tajnych Dapr, który bezpiecznie uzyskuje dostęp do informacji tajnych.

Aby skonfigurować odwołanie:

  1. Utwórz składnik magazynu wpisów tajnych dapr przy użyciu schematu usługi Azure Container Apps. Typ składnika dla wszystkich obsługiwanych magazynów wpisów tajnych języka Dapr rozpoczyna się od secretstores..
  2. Utwórz dodatkowe składniki (zgodnie z potrzebami), które odwołują się do utworzonego składnika magazynu wpisów tajnych Dapr w celu pobrania poufnych danych wejściowych metadanych.

Tworzenie składnika magazynu wpisów tajnych dapr

Podczas tworzenia składnika magazynu wpisów tajnych w usłudze Azure Container Apps możesz podać poufne informacje w sekcji metadanych w jeden z następujących sposobów:

Magazyny wpisów tajnych usługi Azure Key Vault

Poniższy schemat składników przedstawia najprostszą możliwą konfigurację magazynu wpisów tajnych przy użyciu magazynu wpisów tajnych usługi Azure Key Vault. publisher-app i subscriber-app są skonfigurowane tak, aby mieć tożsamość zarządzaną przypisaną przez użytkownika lub system z odpowiednimi uprawnieniami w wystąpieniu usługi Azure Key Vault.

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

Wpisy tajne kubernetes zarządzane przez platformę

Alternatywą dla wpisów tajnych kubernetes, zmiennych środowiskowych lokalnych i lokalnych magazynów wpisów tajnych dapr, usługa Azure Container Apps zapewnia zarządzane przez platformę podejście do tworzenia i wykorzystywania wpisów tajnych platformy Kubernetes. Takie podejście może służyć do nawiązywania połączenia z usługami spoza platformy Azure lub w scenariuszach tworzenia i testowania w celu szybkiego wdrażania składników za pośrednictwem interfejsu wiersza polecenia bez konfigurowania magazynu wpisów tajnych lub tożsamości zarządzanej.

Ta konfiguracja składnika definiuje wartość wrażliwą jako parametr tajny, do którego można odwoływać się z sekcji metadanych.

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

Odwoływanie się do składników magazynu wpisów tajnych dapr

Po utworzeniu magazynu wpisów tajnych dapr przy użyciu jednego z poprzednich podejść możesz odwołać się do tego magazynu wpisów tajnych z innych składników języka Dapr w tym samym środowisku. W poniższym przykładzie pokazano użycie uwierzytelniania entra ID.

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

Następne kroki

Dowiedz się, jak ustawić odporność składników języka Dapr.