AuthenticationRequestMode.Immediate и AuthenticationStatus.SetupRequired - PullRequest
1 голос
/ 10 сентября 2011

Я использую DotNetOpenAuth для создания Проверяющей стороны.Пока все прошло довольно гладко, но я немного застрял в одном;Я не совсем уверен, как обращаться с делом AuthenticationStatus.SetupRequired после немедленной проверки сохраненного заявленного идентификатора.

Я сохраняю заявленные идентификаторы моих посетителей в файле cookie, и возвращаются ли они мнене прошедший проверку подлинности, но с этим файлом cookie я выполняю немедленный запрос аутентификации (потому что я думаю, что именно это я и должен делать), чтобы проверить, что OP думает об этом идентификаторе, который я получил от посетителя.

Кажется, что все, что возвращается в запросе на возврат, это State = SetupRequired ... означает ли это, что OP говорит: "Вы готовы идти ... продолжайте и делайте то, что вам нужно сделать, чтобы сохранить утвержденный_идентификатор".собирается"?Или я должен сделать что-то еще, когда это произойдет?

Более того, это происходит, когда я немедленно отправляю запрос в Yahoo, но не когда я делаю тот же запрос в Google.

Что дает?

Спасибо, Андрей

1 Ответ

3 голосов
/ 11 сентября 2011

Когда вы отправляете «немедленный» запрос, вы спрашиваете OP, желает ли он и может ли сказать, что данный пользователь все еще зарегистрирован в OP.Не все OP поддерживают этот запрос.Те, кто его не поддерживает, и те, которые поддерживают его, но не могут ответить утвердительно (например, если пользователь не вошел в систему), возвращают setup_required RP.

На RP получение SetupRequired в качестве ответа означает «Я не говорю, что пользователь вошел в систему или нет - вам нужно повторить проверку подлинности с помощью checkid_setup» (что означает попытку еще раз, не используя немедленный режим.)

Ключевое различие между непосредственным режимом и режимом «настройки» состоит в том, что в непосредственном режиме OP вообще не должен предоставлять пользователю никакого пользовательского интерфейса - весь процесс должен выглядеть как перенаправлениепользователю.В режиме настройки (то есть в обычном режиме) OP может отображать пользовательский интерфейс входа в систему и / или «вы уверены, что хотите войти в [RP]?»незамедлительный.Если операционному оператору необходимо отобразить этот пользовательский интерфейс, и он не может этого сделать, поскольку это непосредственный режим, то единственное, на что он может ответить, это setup_required.

...