Проверка Itio JWT на JWKS с внутренне подписанным сертификатом - PullRequest
0 голосов
/ 24 октября 2018

Я пытаюсь настроить политику аутентификации Istio для проверки нашего JWT.

Я установил политику и вижу, что она вступает в силу.Однако это не позволит ничего подключить.При применении политики, если я проверяю журналы istio-pilot, я вижу, что она не может получить ключи подписи, выдавая ошибку сертификата.

2018-10-24T03:22:41.052354Z error   model   Failed to fetch pubkey from "https://iam.company.com.au/oauth2/jwks":  Get https://iam.company.com.au/oauth2/jwks:  x509: certificate signed by unknown authority
2018-10-24T03:22:41.052371Z warn    Failed to fetch jwt public key from "https://iam.company.com.au/oauth2/jwks "

Я полагаю, это будет связано с тем, что этот сервер использует сертификат TLS, подписанный нашим корпоративным центром сертификации.

Как мне заставить istio-pilot доверять сертификатам нашего центра сертификации?Я попытался установить CA-сертификаты и включить наш открытый ключ CA в сертификаты Ubuntu, но он все равно не будет работать.

Политика:

apiVersion: "authentication.istio.io/v1alpha1"
kind: "Policy"
metadata:
  name: "our-service-jwt-example"
spec:
  targets:
  - name: our-service
  origins:
  - jwt:
      issuer: iam.company.com.au
      audiences:
      - YRhT8xWtcLrOQmqJUGPA1p6O6mUa
      jwksUri: "https://iam.company.com.au/oauth2/jwks"
  principalBinding: USE_ORIGIN

1 Ответ

0 голосов
/ 05 марта 2019

Пилот решает проблемы с посланником.В этом случае пилот должен иметь сертификат CA.В настоящее время нет никакого способа добавить сертификат CA к пилоту, если вы не добавите сертификат при развертывании пилота в istio.https://github.com/istio/istio/blob/master/pilot/pkg/model/jwks_resolver.go

...