Referens: Konfigurationsinställningar för lokalt installerad gatewaycontainer
GÄLLER FÖR: Utvecklare | Premie
Den här artikeln innehåller en referens för obligatoriska och valfria inställningar som används för att konfigurera api Management-gatewaycontainern med egen värd.
Om du vill veta mer om vår (Kubernetes) produktionsvägledning rekommenderar vi att du läser den här artikeln.
Viktigt!
Den här referensen gäller endast för den lokalt installerade gatewayen v2. Minimiversioner för tillgänglighet för inställningar tillhandahålls.
Konfigurations-API-integrering
Konfigurations-API:et används av den lokala gatewayen för att ansluta till Azure API Management för att hämta den senaste konfigurationen och skicka mått när det är aktiverat.
Här är en översikt över alla konfigurationsalternativ:
Name | beskrivning | Obligatoriskt | Standardvärde | Tillgänglighet |
---|---|---|---|---|
gateway.name | ID för den lokalt installerade gatewayresursen. | Ja, när du använder Microsoft Entra-autentisering | Ej tillämpligt | v2.3+ |
config.service.endpoint | Konfigurationsslutpunkt i Azure API Management för den lokalt installerade gatewayen. Hitta det här värdet i Azure Portal under Gatewaydistribution>. | Ja | Ej tillämpligt | v2.0+ |
config.service.auth | Definierar hur den lokalt installerade gatewayen ska autentiseras till konfigurations-API:et. För närvarande stöds gateway-token och Microsoft Entra-autentisering. | Ja | Ej tillämpligt | v2.0+ |
config.service.auth.azureAd.tenantId | ID för Microsoft Entra-klientorganisationen. | Ja, när du använder Microsoft Entra-autentisering | Ej tillämpligt | v2.3+ |
config.service.auth.azureAd.clientId | Klient-ID för Microsoft Entra-appen att autentisera med (även kallat program-ID). | Ja, när du använder Microsoft Entra-autentisering | Ej tillämpligt | v2.3+ |
config.service.auth.azureAd.clientSecret | Hemlighet för Microsoft Entra-appen att autentisera med. | Ja, när du använder Microsoft Entra-autentisering (om inte certifikat har angetts) | Ej tillämpligt | v2.3+ |
config.service.auth.azureAd.certificatePath | Sökväg till certifikat att autentisera med för Microsoft Entra-appen. | Ja, när du använder Microsoft Entra-autentisering (om inte hemlighet har angetts) | Ej tillämpligt | v2.3+ |
config.service.auth.azureAd.authority | Utfärdar-URL för Microsoft Entra-ID. | Nej | https://login.microsoftonline.com |
v2.3+ |
config.service.auth.tokenAudience | Målgrupp för token som används för Microsoft Entra-autentisering | Nej | https://azure-api.net/configuration |
v2.3+ |
config.service.endpoint.disableCertificateValidation | Definierar om den lokalt installerade gatewayen ska verifiera certifikatet på serversidan för konfigurations-API:et. Vi rekommenderar att du använder certifikatverifiering, endast inaktiverar i testsyfte och med försiktighet eftersom det kan medföra säkerhetsrisker. | Nej | false |
v2.0+ |
config.service.integration.timeout | Definierar tidsgränsen för att interagera med konfigurations-API:et. | Nej | 00:01:40 |
v2.3.5+ |
Den lokalt installerade gatewayen har stöd för några autentiseringsalternativ för att integrera med konfigurations-API:et som kan definieras med hjälp config.service.auth
av .
Den här vägledningen hjälper dig att ange den information som krävs för att definiera hur du autentiserar:
- För gatewaytokenbaserad autentisering anger du en åtkomsttoken (autentiseringsnyckel) för den lokalt installerade gatewayen i Azure Portal under Gateways-distribution>.
- För Microsoft Entra ID-baserad autentisering anger
azureAdApp
och anger du de ytterligareconfig.service.auth.azureAd
autentiseringsinställningarna.
Identifiering och synkronisering mellan instanser
Name | beskrivning | Obligatoriskt | Standardvärde | Tillgänglighet |
---|---|---|---|---|
neighborhood.host | DNS-namn som används för att lösa alla instanser av en gatewaydistribution med egen värd för synkronisering mellan instanser. I Kubernetes kan det uppnås med hjälp av en huvudlös tjänst. | Nej | Ej tillämpligt | v2.0+ |
neighborhood.heartbeat.port | UDP-port som används för instanser av en gatewaydistribution med egen värd för att skicka pulsslag till andra instanser. | Nej | 4291 | v2.0+ |
policy.rate-limit.sync.port | UDP-port som används för gatewayinstanser med egen värd för att synkronisera hastighetsbegränsning över flera instanser. | Nej | 4290 | v2.0+ |
HTTP
Name | beskrivning | Obligatoriskt | Standardvärde | Tillgänglighet |
---|---|---|---|---|
net.server.http.forwarded.proto.enabled | Möjlighet att respektera X-Forwarded-Proto huvudet för att identifiera schema för att matcha den så kallade API-vägen (endast http/https). |
Nej | falskt | v2.5+ |
Kubernetes-integrering
Kubernetes-ingress
Viktigt!
Stödet för Kubernetes Ingress är för närvarande experimentellt och omfattas inte av Azure Support. Läs mer på GitHub.
Name | beskrivning | Obligatoriskt | Standardvärde | Tillgänglighet |
---|---|---|---|---|
k8s.ingress.enabled | Aktivera Kubernetes Ingress-integrering. | Nej | false |
v1.2+ |
k8s.ingress.namespace | Kubernetes-namnrymd för att titta på Kubernetes Ingress-resurser i. | Nej | default |
v1.2+ |
k8s.ingress.dns.suffix | DNS-suffix för att skapa DNS-värdnamn för tjänster att skicka begäranden till. | Nej | svc.cluster.local |
v2.4+ |
k8s.ingress.config.path | Sökväg till Kubernetes-konfiguration (Kubeconfig). | Nej | Ej tillämpligt | v2.4+ |
Mått
Name | beskrivning | Obligatoriskt | Standardvärde | Tillgänglighet |
---|---|---|---|---|
telemetry.metrics.local | Aktivera insamling av lokala mått via StatsD. Värdet är ett av följande alternativ: none , statsd . |
Nej | none |
v2.0+ |
telemetry.metrics.local.statsd.endpoint | StatsD-slutpunkt. | Ja, om telemetry.metrics.local är inställt på statsd ; annars nej. |
Ej tillämpligt | v2.0+ |
telemetry.metrics.local.statsd.sampling | StatistikD-måttsamplingshastighet. Värdet måste vara mellan 0 och 1, till exempel 0,5. | Nej | Ej tillämpligt | v2.0+ |
telemetry.metrics.local.statsd.tag-format | Taggningsformat för StatsD-exportör. Värdet är ett av följande alternativ: ibrato , dogStatsD , influxDB . |
Nej | Ej tillämpligt | v2.0+ |
telemetry.metrics.cloud | Ange om mått ska genereras till Azure Monitor eller inte. | Nej | true |
v2.0+ |
observability.opentelemetry.enabled | Ange om mått ska genereras till en OpenTelemetry-insamlare på Kubernetes eller inte. | Nej | false |
v2.0+ |
observability.opentelemetry.collector.uri | URI för OpenTelemetry-insamlaren att skicka mått till. | Ja, om observability.opentelemetry.enabled är inställt på true ; annars nej. |
Ej tillämpligt | v2.0+ |
observability.opentelemetry.system-metrics.enabled | Aktivera sändning av systemmått till OpenTelemetry-insamlaren, till exempel CPU, minne, skräpinsamling osv. | Nej | false |
v2.3+ |
observability.opentelemetry.histogram.buckets | Histogram buckets där OpenTelemetry-mått ska rapporteras. Format: "x,y,z,...". | Nej | "5,10,25,50,100,250,500,1000,2500,5000,10000" | v2.0+ |
Loggar
Name | beskrivning | Obligatoriskt | Standardvärde | Tillgänglighet |
---|---|---|---|---|
telemetry.logs.std | Aktivera loggning till en standardström. Värdet är ett av följande alternativ: none , text , json . |
Nej | text |
v2.0+ |
telemetry.logs.std.level | Definierar loggnivån för loggar som skickas till standardströmmen. Värdet är något av följande alternativ: all , debug , info , warn eller error fatal . |
Nej | info |
v2.0+ |
telemetry.logs.std.color | Ange om färgade loggar ska användas i standardströmmen eller inte. | Nej | true |
v2.0+ |
telemetry.logs.local | Aktivera lokal loggning. Värdet är ett av följande alternativ: none , auto , localsyslog , rfc5424 , , journal , json |
Nej | auto |
v2.0+ |
telemetry.logs.local.localsyslog.endpoint | localsyslog-slutpunkt. | Ja om telemetry.logs.local är inställt på localsyslog ; annars nej. Mer information om konfiguration finns i dokumentationen för lokal syslog. |
Ej tillämpligt | v2.0+ |
telemetry.logs.local.localsyslog.facility | Anger localsyslog-anläggningskod, till exempel 7 . |
Nej | Ej tillämpligt | v2.0+ |
telemetry.logs.local.rfc5424.endpoint | rfc5424-slutpunkt. | Ja om telemetry.logs.local är inställt på rfc5424 ; annars nej. |
Ej tillämpligt | v2.0+ |
telemetry.logs.local.rfc5424.facility | Anläggningskod per rfc5424, till exempel 7 |
Nej | Ej tillämpligt | v2.0+ |
telemetry.logs.local.journal.endpoint | Journalslutpunkt. | Ja om telemetry.logs.local är inställt på journal ; annars nej. |
Ej tillämpligt | v2.0+ |
telemetry.logs.local.json.endpoint | UDP-slutpunkt som accepterar JSON-data, som anges som filsökväg, IP:port eller värdnamn:port. | Ja om telemetry.logs.local är inställt på json ; annars nej. |
127.0.0.1:8888 | v2.0+ |
Säkerhet
Certifikat och chiffer
Name | beskrivning | Obligatoriskt | Standardvärde | Tillgänglighet |
---|---|---|---|---|
certificates.local.ca.enabled | Ange om den lokalt installerade gatewayen ska använda lokala CA-certifikat som är monterade eller inte. Det krävs för att köra den lokalt installerade gatewayen som rot eller med användar-ID 1001. | Nej | false |
v2.0+ |
net.server.tls.ciphers.allowed-suites | Kommaavgränsad lista över chiffer som ska användas för TLS-anslutning mellan API-klienten och den lokalt installerade gatewayen. | Nej | TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA |
v2.0+ |
net.client.tls.ciphers.allowed-suites | Kommaavgränsad lista över chiffer som ska användas för TLS-anslutning mellan den lokala gatewayen och serverdelen. | Nej | TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA |
v2.0+ |
security.certificate-revocation.validation.enabled | Ger möjlighet att aktivera/inaktivera validering av certifikatåterkallningslista | Nej | false |
v2.3.6+ |
TLS
Name | beskrivning | Obligatoriskt | Standardvärde | Tillgänglighet |
---|---|---|---|---|
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls13 | Ange om TLS 1.3 tillåts mot serverdelen eller inte. Liknar hantering av protokoll chiffer i hanterad gateway. | Nej | true |
v2.0+ |
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls12 | Ange om TLS 1.2 tillåts mot serverdelen eller inte. Liknar hantering av protokoll chiffer i hanterad gateway. | Nej | true |
v2.0+ |
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 | Ange om TLS 1.1 tillåts mot serverdelen eller inte. Liknar hantering av protokoll chiffer i hanterad gateway. | Nej | false |
v2.0+ |
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 | Ange om TLS 1.0 tillåts mot serverdelen eller inte. Liknar hantering av protokoll chiffer i hanterad gateway. | Nej | false |
v2.0+ |
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30 | Ange om SSL 3.0 tillåts mot serverdelen eller inte. Liknar hantering av protokoll chiffer i hanterad gateway. | Nej | false |
v2.0+ |
Nationella moln
Här är en översikt över inställningar som måste konfigureras för att kunna arbeta med nationella moln:
Name | Offentliga | Azure Kina | US Government |
---|---|---|---|
config.service.auth.tokenAudience | https://azure-api.net/configuration (Standard) |
https://azure-api.cn/configuration |
https://azure-api.us/configuration |
logs.applicationinsights.endpoint | https://dc.services.visualstudio.com/v2/track (Standard) |
https://dc.applicationinsights.azure.cn/v2/track |
https://dc.applicationinsights.us/v2/track |
Så här konfigurerar du inställningar
Kubernetes YAML-fil
När du distribuerar den lokalt installerade gatewayen till Kubernetes med hjälp av en YAML-fil konfigurerar du inställningarna som namn/värde-par i elementet data
i gatewayens ConfigMap. Till exempel:
apiVersion: v1
kind: ConfigMap
metadata:
name: contoso-gateway-environment
data:
config.service.endpoint: "contoso.configuration.azure-api.net"
telemetry.logs.std: "text"
telemetry.logs.local.localsyslog.endpoint: "/dev/log"
telemetry.logs.local.localsyslog.facility: "7"
[...]
Helm-diagram
När du använder Helm för att distribuera den lokalt installerade gatewayen till Kubernetes skickar du konfigurationsinställningarna för diagram som parametrar till helm install
kommandot. Till exempel:
helm install azure-api-management-gateway \
--set gateway.configuration.uri='contoso.configuration.azure-api.net' \
--set gateway.auth.key='GatewayKey contosogw&xxxxxxxxxxxxxx...' \
--set secret.createSecret=false \
--set secret.existingSecretName=`mysecret` \
azure-apim-gateway/azure-api-management-gateway
Nästa steg
- Läs mer om vägledning för att köra den lokala gatewayen på Kubernetes i produktion
- Distribuera en gateway med egen värd till Docker
- Distribuera en lokalt installerad gateway till Kubernetes
- Distribuera en lokalt installerad gateway till Azure Arc-aktiverat Kubernetes-kluster
- Aktivera Dapr-stöd på en lokalt installerad gateway
- Läs mer om konfigurationsalternativ för Azure Arc-tillägget