Integrowanie konfiguracji aplikacja systemu Azure z łącznikiem usługi
Artykuł
Na tej stronie przedstawiono obsługiwane metody uwierzytelniania i klientów oraz pokazano przykładowy kod, którego można użyć do połączenia aplikacja systemu Azure Configuration z innymi usługami w chmurze przy użyciu łącznika usług. Nadal możesz nawiązać połączenie z usługą App Configuration przy użyciu innych metod. Ta strona zawiera również domyślne nazwy zmiennych środowiskowych i wartości uzyskiwane podczas tworzenia połączenia z usługą.
Obsługiwane usługi obliczeniowe
Łącznik usługi może służyć do łączenia następujących usług obliczeniowych z konfiguracją aplikacja systemu Azure:
Azure App Service
Azure Container Apps
Azure Functions
Azure Kubernetes Service (AKS)
Azure Spring Apps
Obsługiwane typy uwierzytelniania i typy klientów
W poniższej tabeli pokazano, które kombinacje metod uwierzytelniania i klientów są obsługiwane do łączenia usługi obliczeniowej z usługą aplikacja systemu Azure Configuration przy użyciu łącznika usługi Service Connector. Wartość "Tak" wskazuje, że kombinacja jest obsługiwana, a wartość "Nie" wskazuje, że nie jest obsługiwana.
Typ klienta
Tożsamość zarządzana przypisana przez system
Tożsamość zarządzana przypisana przez użytkownika
Wpis tajny/parametry połączenia
Jednostka usługi
.NET
Tak
Tak
Tak
Tak
Java
Tak
Tak
Tak
Tak
Node.js
Tak
Tak
Tak
Tak
Python
Tak
Tak
Tak
Tak
None
Tak
Tak
Tak
Tak
Ta tabela wskazuje, że obsługiwane są wszystkie kombinacje typów klientów i metod uwierzytelniania w tabeli. Wszystkie typy klientów mogą używać dowolnej z metod uwierzytelniania, aby nawiązać połączenie z aplikacja systemu Azure Configuration przy użyciu łącznika usługi.
Domyślne nazwy zmiennych środowiskowych lub właściwości aplikacji i przykładowy kod
Użyj poniższych szczegółów połączenia, aby połączyć usługi obliczeniowe z magazynami aplikacja systemu Azure Configuration. Aby uzyskać więcej informacji na temat konwencji nazewnictwa, zapoznaj się z artykułem Dotyczącym wewnętrznych łączników usług.
Tożsamość zarządzana przypisana przez system
Domyślna nazwa zmiennej środowiskowej
opis
Przykładowa wartość
AZURE_APPCONFIGURATION_ENDPOINT
Punkt końcowy konfiguracji aplikacji
https://<App-Configuration-name>.azconfig.io
Przykładowy kod
Zapoznaj się z poniższymi krokami i kodem, aby nawiązać połączenie z konfiguracją aplikacja systemu Azure przy użyciu tożsamości zarządzanej przypisanej przez system.
Uwierzytelnianie przy użyciu i Azure.Identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
using Azure.Identity;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
string endpoint = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_ENDPOINT");
// Uncomment the following lines corresponding to the authentication type you want to use.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();
// user-assigned managed identity
// var credential = new DefaultAzureCredential(
// new DefaultAzureCredentialOptions
// {
// ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
// });
// service principal
// var tenantId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var client = new ConfigurationClient(new Uri(endpoint), credential);
Uwierzytelnianie przy użyciu i azure-identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential defaultCredential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .clientSecret(System.getenv("AZURE_APPCONFIGURATION_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_APPCONFIGURATION_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_APPCONFIGURATION_ENDPOINT");
ConfigurationClient configurationClient = new ConfigurationClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
Uwierzytelnianie przy użyciu i azure-identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
import os
from azure.appconfiguration import AzureAppConfigurationClient
from azure.identity import ManagedIdentityCredential, ClientSecretCredential
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_APPCONFIGURATION_TENANTID')
# client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# client_secret = os.getenv('AZURE_APPCONFIGURATION_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
endpoint_url = os.getenv('AZURE_APPCONFIGURATION_ENDPOINT')
client = AzureAppConfigurationClient(base_url="your_endpoint_url", credential=credential)
Uwierzytelnianie przy użyciu i @azure/identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
const appConfig = require("@azure/app-configuration");
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_APPCONFIGURATION_TENANTID;
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const clientSecret = process.env.AZURE_APPCONFIGURATION_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_APPCONFIGURATION_ENDPOINT;
const client = new appConfig.AppConfigurationClient(
endpoint,
credential
);
W przypadku innych języków można użyć informacji o połączeniu, które łącznik usługi ustawia na zmienne środowiskowe w celu nawiązania połączenia z aplikacja systemu Azure Configuration. Aby uzyskać szczegółowe informacje o zmiennej środowiskowej, zobacz Integrowanie konfiguracji aplikacja systemu Azure z łącznikiem usługi.
Tożsamość zarządzana przypisana przez użytkownika
Domyślna nazwa zmiennej środowiskowej
opis
Przykładowa wartość
AZURE_APPCONFIGURATION_ENDPOINT
Punkt końcowy konfiguracji aplikacji
https://App-Configuration-name>.azconfig.io
AZURE_APPCONFIGURATION_CLIENTID
Identyfikator klienta
<client-ID>
Przykładowy kod
Zapoznaj się z poniższymi krokami i kodem, aby nawiązać połączenie z konfiguracją aplikacja systemu Azure przy użyciu tożsamości zarządzanej przypisanej przez użytkownika.
Uwierzytelnianie przy użyciu i Azure.Identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
using Azure.Identity;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
string endpoint = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_ENDPOINT");
// Uncomment the following lines corresponding to the authentication type you want to use.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();
// user-assigned managed identity
// var credential = new DefaultAzureCredential(
// new DefaultAzureCredentialOptions
// {
// ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
// });
// service principal
// var tenantId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var client = new ConfigurationClient(new Uri(endpoint), credential);
Uwierzytelnianie przy użyciu i azure-identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential defaultCredential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .clientSecret(System.getenv("AZURE_APPCONFIGURATION_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_APPCONFIGURATION_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_APPCONFIGURATION_ENDPOINT");
ConfigurationClient configurationClient = new ConfigurationClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
Uwierzytelnianie przy użyciu i azure-identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
import os
from azure.appconfiguration import AzureAppConfigurationClient
from azure.identity import ManagedIdentityCredential, ClientSecretCredential
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_APPCONFIGURATION_TENANTID')
# client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# client_secret = os.getenv('AZURE_APPCONFIGURATION_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
endpoint_url = os.getenv('AZURE_APPCONFIGURATION_ENDPOINT')
client = AzureAppConfigurationClient(base_url="your_endpoint_url", credential=credential)
Uwierzytelnianie przy użyciu i @azure/identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
const appConfig = require("@azure/app-configuration");
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_APPCONFIGURATION_TENANTID;
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const clientSecret = process.env.AZURE_APPCONFIGURATION_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_APPCONFIGURATION_ENDPOINT;
const client = new appConfig.AppConfigurationClient(
endpoint,
credential
);
W przypadku innych języków można użyć informacji o połączeniu, które łącznik usługi ustawia na zmienne środowiskowe w celu nawiązania połączenia z aplikacja systemu Azure Configuration. Aby uzyskać szczegółowe informacje o zmiennej środowiskowej, zobacz Integrowanie konfiguracji aplikacja systemu Azure z łącznikiem usługi.
Connection string
Ostrzeżenie
Firma Microsoft zaleca korzystanie z najbezpieczniejszego dostępnego przepływu uwierzytelniania. Przepływ uwierzytelniania opisany w tej procedurze wymaga bardzo wysokiego poziomu zaufania w aplikacji i niesie ze sobą ryzyko, które nie występują w innych przepływach. Tego przepływu należy używać tylko wtedy, gdy inne bezpieczniejsze przepływy, takie jak tożsamości zarządzane, nie są opłacalne.
Pobierz parametry połączenia App Configuration ze zmiennych środowiskowych dodanych przez łącznik usługi.
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
var connectionString = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CONNECTIONSTRING");
var builder = new ConfigurationBuilder();
builder.AddAzureAppConfiguration(connectionString);
var config = builder.Build();
W przypadku innych języków można użyć informacji o połączeniu, które łącznik usługi ustawia na zmienne środowiskowe w celu nawiązania połączenia z aplikacja systemu Azure Configuration. Aby uzyskać szczegółowe informacje o zmiennej środowiskowej, zobacz Integrowanie konfiguracji aplikacja systemu Azure z łącznikiem usługi.
Jednostka usługi
Domyślna nazwa zmiennej środowiskowej
opis
Przykładowa wartość
AZURE_APPCONFIGURATION_ENDPOINT
Punkt końcowy konfiguracji aplikacji
https://<AppConfigurationName>.azconfig.io
AZURE_APPCONFIGURATION_CLIENTID
Identyfikator klienta
<client-ID>
AZURE_APPCONFIGURATION_CLIENTSECRET
Klucz tajny klienta
<client-secret>
AZURE_APPCONFIGURATION_TENANTID
Identyfikator dzierżawy
<tenant-ID>
Przykładowy kod
Zapoznaj się z poniższymi krokami i kodem, aby nawiązać połączenie z konfiguracją aplikacja systemu Azure przy użyciu usługi principaL.
Uwierzytelnianie przy użyciu i Azure.Identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
using Azure.Identity;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
string endpoint = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_ENDPOINT");
// Uncomment the following lines corresponding to the authentication type you want to use.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();
// user-assigned managed identity
// var credential = new DefaultAzureCredential(
// new DefaultAzureCredentialOptions
// {
// ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
// });
// service principal
// var tenantId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var client = new ConfigurationClient(new Uri(endpoint), credential);
Uwierzytelnianie przy użyciu i azure-identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential defaultCredential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .clientSecret(System.getenv("AZURE_APPCONFIGURATION_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_APPCONFIGURATION_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_APPCONFIGURATION_ENDPOINT");
ConfigurationClient configurationClient = new ConfigurationClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
Uwierzytelnianie przy użyciu i azure-identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
import os
from azure.appconfiguration import AzureAppConfigurationClient
from azure.identity import ManagedIdentityCredential, ClientSecretCredential
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_APPCONFIGURATION_TENANTID')
# client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# client_secret = os.getenv('AZURE_APPCONFIGURATION_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
endpoint_url = os.getenv('AZURE_APPCONFIGURATION_ENDPOINT')
client = AzureAppConfigurationClient(base_url="your_endpoint_url", credential=credential)
Uwierzytelnianie przy użyciu i @azure/identity uzyskiwanie punktu końcowego konfiguracji aplikacja systemu Azure ze zmiennych środowiskowych dodanych przez łącznik usługi. Korzystając z poniższego kodu, usuń komentarz z części fragmentu kodu dla typu uwierzytelniania, którego chcesz użyć.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
const appConfig = require("@azure/app-configuration");
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_APPCONFIGURATION_TENANTID;
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const clientSecret = process.env.AZURE_APPCONFIGURATION_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_APPCONFIGURATION_ENDPOINT;
const client = new appConfig.AppConfigurationClient(
endpoint,
credential
);
W przypadku innych języków można użyć informacji o połączeniu, które łącznik usługi ustawia na zmienne środowiskowe w celu nawiązania połączenia z aplikacja systemu Azure Configuration. Aby uzyskać szczegółowe informacje o zmiennej środowiskowej, zobacz Integrowanie konfiguracji aplikacja systemu Azure z łącznikiem usługi.
Następne kroki
Postępuj zgodnie z samouczkiem wymienionym poniżej, aby dowiedzieć się więcej o łączniku usługi.