IdentityServer4 без HTTPS не работает - PullRequest
0 голосов
/ 27 февраля 2019

В настоящее время я занят внедрением единого входа для использования несколькими приложениями, поэтому я использую IdentityServer4 для аутентификации.

Локально все работает отлично, мои угловые приложения перенаправляют и аутентифицируют, как следует, и всехорошо работает на местном уровне ...

Для своих приложений Angular я использую angular-oauth2-oidc.

НО ..

Наша внутренняя среда тестирования / QAнедоступен извне, и мы не можем использовать HTTPS на этом сервере, поэтому я пытаюсь использовать его сейчас без HTTPS (то есть просто с обычным http).На стороне клиента я установил для параметра angular-oauth2-oidc requireHttps значение false, поэтому первоначальное перенаправление работает, НО, в тот момент, когда я пытаюсь войти в систему, оно не перенаправляет обратно в мое приложение, и я не могу на всю жизньзаставить его работать!

Может кто-нибудь помочь, пожалуйста!

Я знаю, что мои RedirectUris и PostLogoutRedirectUris установлены правильно, потому что он работает, если я использую HTTPS ... Но кажется, что фактический вход в системуsection:

await HttpContext.SignInAsync (userId, userName, props, притязания);

может вызывать проблемы, поскольку при проверке журналов я вижу следующее:

IdentityServer4.Endpoints.AuthorizeCallbackEndpoint: Debug: Запустить авторизованный запрос обратного вызова IdentityServer4.Endpoints.AuthorizeCallbackEndpoint: Debug: В запросе авторизации нет пользователя IdentityServer4.Validator.Stores.ValidatingClientStore: Debug: клиент настроенИонная проверка для клиента openIdConnectClient прошла успешно.IdentityServer4.Validation.AuthorizeRequestValidator: Debug: вызов пользовательского валидатора: IdentityServer4.Validation.DefaultCustomAuthorizeRequestValidator IdentityServer4.Endpoints.AuthorizeCallbackEndpoint: Информация: клиентский запрос"RedirectUri": "http://localhost:4200/signin-oidc"," AllowedRedirectUris ": [" http://localhost:4200/signin-oidc"], "SubjectId": "anonymous", "ResponseType": "id_token token", "ResponseMode": "фрагмент","GrantType": "implicit", "RequestedScopes": "адрес электронной почты профиля openid Имя пользователя EmailAddress", "State": "xGKOyXoYjiYtX22q3rwXLTni0V9HlgKrarR0lRNd", "Nonce": "xGKOyXoYjiYtXl_0_q" """client_id": "openIdConnectClient", "state": "xGKOyXoYjiYtX22q3rwXLTni0V9HlgKrarR0lRNd", "redirect_uri": "http://localhost:4200/signin-oidc"," scope ":" электронная почта с открытым профилем EmailAddress "ResponseHandling.AuthorizeInteractionResponseGenerator: Информация: Отображение имени входа: пользователь не аутентифицирован

Я вижу следующие строки: в запросе на авторизацию пользователя нет

"SubjectId": "anonymous"

Отображение логина: пользователь не аутентифицирован

Даже если он находит пользователя, он все равно делает это, поэтому я думаю, что это может быть проблемой, но у меня нет ИДЕИ, как это исправить; (

Спасибо заранее !!!!

...