Připojení k jiným službám Azure nebo službám třetích stran prostřednictvím komponent Dapr
Bezpečně navazujte připojení ke službám Azure a službám třetích stran pro komponenty Dapr pomocí spravované identity nebo úložišť tajných kódů služby Azure Key Vault.
Než začnete, přečtěte si další informace o nabízené podpoře komponent Dapr.
Doporučení
Kdykoli je to možné, doporučujeme používat komponenty Azure, které poskytují podporu spravované identity pro nejbezpečnější připojení. Úložiště tajných kódů služby Azure Key Vault používejte jenom v případech, kdy se nepodporuje ověřování spravovaných identit.
Typ služby | Doporučení |
---|---|
Komponenta Azure s podporou spravované identity | Použití toku spravované identity (doporučeno) |
Komponenta Azure bez podpory spravované identity | Použití úložiště tajných kódů služby Azure Key Vault |
Komponenty mimo Azure | Použití úložiště tajných kódů služby Azure Key Vault |
Použití spravované identity (doporučeno)
U služeb hostovaných v Azure může Dapr použít spravovanou identitu aplikací kontejnerů s vymezeným oborem k ověření u poskytovatele back-endových služeb. Při použití spravované identity nemusíte do manifestu komponenty zahrnout tajné informace. Použití spravované identity se doporučuje , protože eliminuje ukládání citlivých vstupů do komponent a nevyžaduje správu úložiště tajných kódů.
Poznámka:
Pole azureClientId
metadat (ID klienta spravované identity) se vyžaduje pro všechny komponenty, které se ověřují pomocí spravované identity přiřazené uživatelem.
Použití odkazu na komponentu úložiště tajných kódů Dapr
Když vytvoříte komponenty Dapr pro služby nebo komponenty, které nepodporují ověřování spravované identity, některá pole metadat vyžadují citlivé vstupní hodnoty. Pro tento přístup načtěte tyto tajné kódy odkazem na existující komponentu úložiště tajných kódů Dapr, která bezpečně přistupuje k tajným informacím.
Nastavení odkazu:
- Vytvořte komponentu úložiště tajných kódů Dapr pomocí schématu Azure Container Apps. Typ komponenty pro všechna podporovaná úložiště tajných kódů Dapr začíná
secretstores.
na . - Vytvořte další komponenty (podle potřeby), které odkazují na komponentu úložiště tajných kódů Dapr, kterou jste vytvořili pro načtení vstupu citlivých metadat.
Vytvoření komponenty úložiště tajných kódů Dapr
Při vytváření komponenty úložiště tajných kódů ve službě Azure Container Apps můžete v části metadat zadat citlivé informace jedním z následujících způsobů:
- Pro úložiště tajných kódů azure Key Vault použijte spravovanou identitu k navázání připojení.
- V případě úložišť tajných kódů mimo Azure použijte tajné kódy Kubernetes spravované platformou, které jsou definované přímo jako součást manifestu komponenty.
Úložiště tajných kódů služby Azure Key Vault
Následující schéma komponent představuje nejjednodušší možnou konfiguraci úložiště tajných kódů pomocí úložiště tajných kódů služby Azure Key Vault.
publisher-app
a subscriber-app
jsou nakonfigurované tak, aby měly spravovanou identitu přiřazenou systémem nebo uživatelem s příslušnými oprávněními k instanci služby 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
Tajné kódy Kubernetes spravované platformou
Jako alternativu k tajným kódům Kubernetes, místním proměnným prostředí a úložištím tajných kódů Dapr místního souboru Dapr poskytuje Služba Azure Container Apps přístup spravovaný platformou pro vytváření a využívání tajných kódů Kubernetes. Tento přístup se dá použít k připojení ke službám mimo Azure nebo ve scénářích vývoje/testování pro rychlé nasazování komponent prostřednictvím rozhraní příkazového řádku bez nastavení úložiště tajných kódů nebo spravované identity.
Tato konfigurace komponenty definuje citlivou hodnotu jako parametr tajného kódu, na který lze odkazovat v části metadat.
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
Odkazování na komponenty úložiště tajných kódů Dapr
Jakmile vytvoříte úložiště tajných kódů Dapr pomocí některého z předchozích přístupů, můžete na toto úložiště tajných kódů odkazovat z jiných komponent Dapr ve stejném prostředí. Následující příklad ukazuje použití ověřování 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