Аутентификация конечного пользователя с помощью JWT в Istio выдает «ошибку восходящего соединения» - PullRequest
2 голосов
/ 03 апреля 2019

Я пытаюсь настроить аутентификацию конечного пользователя с JWT в Istio, как описано здесь: https://istio.io/help/ops/security/end-user-auth/

Вот шаги для воспроизведения:

  1. Локальная настройка Istio: https://github.com/nheidloff/cloud-native-starter/blob/master/LocalEnvironment.md
  2. Настройка HTTPS, примеров служб и Ingress: https://github.com/nheidloff/cloud-native-starter/blob/master/istio/IstioIngressHTTPS.md
  3. kubectl apply -f https://github.com/nheidloff/cloud-native-starter/blob/master/istio/access.yaml

Я создал небольшое приложение дляполучить токен JWT для пользователя.Я проверил, что токен действителен через https://jwt.io/.

Когда я вызываю следующие URL, я получаю ту же ошибку:

curl -k https://web-api.local:31390/web-api/v1/getmultiple
curl -k https://web-api.local:31390/web-api/v1/getmultiple --header 'Authorization: Bearer eyJhbGciOiJIU.........wOeF_k'

Код состояния HTTP: 503 upstreamошибка подключения или отключение / сброс перед заголовками

Я не вижу записей, связанных с этими запросами, в журналах istio-proxy.Я предполагаю, что это означает, что что-то идет не так, прежде чем запрос поступит на прокси.

kubectl logs web-api-v1-545f655f67-fhppt istio-proxy

Я пробовал Istio 1.0.6 и 1.1.1.

У меня закончились идеи, что еще можно попробовать.Любая помощь высоко ценится!Спасибо!

1 Ответ

2 голосов
/ 04 апреля 2019

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

...