Questo argomento spiega come abilitare TLS e mTLS unidirezionali sul gateway in entrata.
Configurazione di TLS unidirezionale
Utilizza TLS unidirezionale per proteggere gli endpoint del proxy API sul gateway in entrata. Per attivare con TLS unidirezionale, puoi configurare il traffico in entrata con coppie di certificati/chiavi TLS o Secret, come spiegato nelle opzioni seguenti.
Opzione 1: coppia chiave/certificata
Fornisci i file del certificato e della chiave SSL nella proprietà virtualhosts
del file delle sostituzioni:
virtualhosts:
- name: $ENVIRONMENT_GROUP_NAME
sslCertPath: "$CERT_FILE"
sslKeyPath: "$KEY_FILE"
Dove $ENVIRONMENT_GROUP_NAME è il nome di un gruppo di ambiente con alias host corrispondenti, mentre $CERT_FILE e $KEY_FILE sono chiave e certificato TLS . Vedi Creare certificati TLS.
Opzione 2: secret Kubernetes
Creare un Kubernetes Secret e aggiungilo al file degli override.
- Crea il secret nello spazio dei nomi
apigee
:kubectl create -n apigee secret generic $SECRET_NAME \ --from-file=key=$KEY_FILE \ --from-file=cert=$CERT_FILE
- Configura la proprietà
virtualhosts
nel file di override:virtualhosts: - name: $ENVIRONMENT_GROUP_NAME tlsMode: SIMPLE # Note: SIMPLE is the default, so it is optional. sslSecret: $SECRET_NAME
Configurazione di mTLS
Anziché TLS unidirezionale, puoi configurare mTLS sul gateway in entrata. Esistono due opzioni per la configurazione di mTLS, come spiegato di seguito.
Opzione 1: coppia chiave/certificata e file CA
Fornisci i dati del certificato TLS contenenti i certificati delle autorità di certificazione:
virtualhosts:
- name: $ENVIRONMENT_GROUP_NAME
tlsMode: MUTUAL
caCertPath: "$CA_FILE"
sslCertPath: "$CERT_FILE"
sslKeyPath: "$KEY_FILE"
Dove $ENVIRONMENT_GROUP_NAME è il nome di un gruppo di ambiente con alias host corrispondenti, $CA_FILE specifica i dati del certificato TLS (file del bundle CA) che contengono certificati dell'autorità di certificazione e $CERT_FILE e $KEY_FILE sono chiave e certificato TLS . Vedi Creare certificati TLS.
Opzione 2: Kubernetes Secrets
Creare due secret di Kubernetes. Il primo segreto è per la coppia chiave/certificato SSL e il secondo per la CA. Aggiungili al file delle sostituzioni.
- Crea due secret Kubernetes nello spazio dei nomi
apigee
:kubectl create -n apigee secret generic $SECRET_NAME \ --from-file=key=$KEY_FILE \ --from-file=cert=$CERT_FILE
- Crea un secret per la CA:
kubectl create -n apigee secret generic $SECRET_NAME-cacert \ --from-file=cacert=$CA_FILE
- Configura la proprietà
virtualhosts
nel file delle sostituzioni:virtualhosts: - name: $ENVIRONMENT_GROUP_NAME tlsMode: MUTUAL # Note: Be sure to specify MUTUAL sslSecret: $SECRET_NAME