У меня есть проект с IdentityServer4. Когда я запускаю все локально, все работает хорошо.
Проблема возникает, когда я хочу запустить все это в Docker-контейнерах (DB, FrontEnd, BackEnd, IdentityServer) с помощью ReverseProxy Traefik.
Я создал сертификаты для использования HTTPS.
Если я выполню «https://MyHost/auth/.well-known/openid-configuration» или «https://MyHost/auth/ .well-known/openid-configuration/jwks" из Браузера, всё работает, в ответ получаю ожидаемый JSON. Если я подключаюсь к BackEndDockerContainer и выполняю эти запросы через curl -v к IdentityServerDockerContainer, все работает правильно, ответ тот же. Все запросы выполняются через HTTPS.
"RedirectUris": [
"https://MyHost/",
] определяется в IdentityServer/appsettings.json< /p>
Ошибка
После ввода логина и пароля и нажатия кнопки «Войти» на сервере идентификации появляется ошибка «ERR redirect_uri is отсутствует или слишком длинный",
" "RedirectUri": null, "AllowedRedirectUris": ["https:.....",
хотя redirect_uri существует и определен в BrowserNetwork
Traefik для идентификации
Код: Выделить всё
- "traefik.enable=true"
- "traefik.http.routers.identity-server.rule=Host(`MyHost`) && PathPrefix(`/auth{regex:$$|/.*}`)"
- "traefik.http.routers.identity-server.entrypoints=websecure"
- "traefik.http.routers.identity-server.tls=true"
- "traefik.http.routers.identity-server.middlewares=identity-server-stripprefix"
- "traefik.http.middlewares.identity-server-stripprefix.stripprefix.prefixes=/auth"
Любые идеи приветствуются.
Подробнее здесь: https://stackoverflow.com/questions/791 ... ckercontai