2014-10-16 3 views
0

Я создаю хост OpenId Connect с использованием IdentityServer v3, поддерживаемый идентификатором ASP.NET.Thinktecture IdentityServer с идентификатором ASP.NET - уже аутентифицированный пользователь

В случае, если пользователь уже выполнил вход в хост-приложение с использованием идентификатора ASP.NET, как я могу использовать существующий сеанс, а не предлагать пользователю снова войти в систему?

Например, если вы уже вошли в свою учетную запись Google, и вы перейдете на страницу https://jabbr.net/, вы обнаружите, что Google не предлагает ввести свое имя пользователя и пароль для аутентификации через Google.

ответ

0

IdentityServer не будет запрашивать учетные данные при наличии существующего сеанса аутентификации - IOW cookie. Проверьте, присутствует ли этот файл cookie или что-то потеряно. По умолчанию cookie действителен только в том случае, если окно браузера не закрыто.

IdSrv3 бета-2 также имеет постоянную функцию печенья сейчас -

https://identityserver.github.io/Documentation/docs/configuration/authenticationOptions.html

+0

Спасибо за ответ, Dom. Существует файл cookie, он называется «.AspNet.ApplicationCookie». По какой-то причине IdentityServer не собирает этот сеанс и создает его собственный файл cookie с именем «.Aspnet.Cookies». Есть идеи? Это был длинный снимок, но я попытался изменить имя файла cookie в ASP.NET Identity на «.AspNet.Cookies», но это никому не помогло, а новый файл cookie аннулировал учетную запись Identity. –

+0

Файл cookie должен быть выпущен IdentityServer, конечно. – leastprivilege

+0

Мой сайт использует идентификатор ASP.NET, который выдает файлы cookie при входе пользователя в систему. Я хочу добавить возможности хоста OpenID Connect на этот сайт, что позволяет другим сайтам определять текущего пользователя и их требования. Можно ли сделать это таким образом, чтобы пользователь, имеющий активный сеансовый файл cookie (из ASP.NET Identity), мог запросить IdentityServer, не попросив снова ввести свои учетные данные? –

Смежные вопросы