Я использую DotnetOpenAuth, мне нужно передать некоторые данные с SetCallbackArgument, но проблема в том, что какой-то поставщик OpenId такие как http://pip.verisignlabs.com/ http://clickpass.com/public/username перенаправляет на мой сайт с строки запроса более чем 2048 характер и IIS не могут справиться с этим. Я получил 404 - Файл или каталог не найдены. ошибка приводит к тому, что перенаправление слишком велико. Что мне делать в этом случае?Ошибка длины запроса OpenId в DotNetOpenAuth?
ответ
В спецификации OpenID указано, что слишком большие ответы OpenID должны использовать форму POST вместо 301 перенаправления, что помогает избежать этой проблемы. Я не знаю, пренебрегает ли verisign или clickpass той частью спецификации или нет. Но в целом ваши аргументы обратного вызова должны быть сокращены, чтобы избежать такой проблемы. И, конечно, если ваш аргумент обратного вызова очень велик, его никогда нельзя было ожидать, поскольку аргументы обратного вызова всегда должны быть в строке запроса.
Обычно, если вы хотите получить большой бит данных при возврате пользователя, вы можете сохранить его в db, в сеансе пользователя или в cookie, и хранить только небольшую ссылку на эти данные в аргументе обратного вызова ,
Помните, что что-либо в аргументе обратного вызова подлежит проверке пользователем, любым третьим лицом, если HTTPS не используется для всего этого и даже возможное вмешательство. DNOA предоставляет дополнительную защиту от несанкционированного доступа для аргументов обратного вызова, но не является конфиденциальностью.
- 1. Реализация OpenID-селектора + dotnetopenauth
- 2. PHP Zend OpenID провайдер и DotNetOpenAuth Ошибка обратной связи OpenID
- 3. Реализация DotNetOpenAuth и Google OpenID
- 4. Как интегрировать DotNetOpenAuth и openid-selector
- 5. Реализация OpenID (DotNetOpenAuth) с классическим ASP
- 6. Провайдер OpenID на localhost с DotNetOpenAuth
- 7. DotNetOpenAuth OpenID Flow w/Own Auth Server
- 8. DotNetOpenAuth: Как реализовать простой провайдер OpenId?
- 9. DotNetOpenAuth провайдер OpenID не принимает запросы
- 10. DotNetOpenAuth: Нет OpenID конечная точка найдено
- 11. Сериализация аутентификацииRequest в DotNetOpenAuth
- 12. Попытка сделать простейший OpenID с помощью DotNetOpenAuth Войти в asp.net
- 13. Заставить пользователей повторно аутентифицироваться в OpenId с помощью DotNetOpenAuth
- 14. Как использовать DotNetOpenAuth в моей системе для провайдера OpenID?
- 15. Как включить расширение AX в запрос OpenID с использованием DotNetOpenAuth
- 16. DotNetOpenAuth - диагностика «Нет найденной конечной точки OpenID» на Mono
- 17. DotNetOpenAuth аутентификации
- 18. DotNetOpenAuth: неправильная подпись сообщения
- 19. DotNetOpenAuth на веб-ферме
- 20. DotNetOpenAuth 4.3 и Google - OpenID 2.0 + OAuth 1.0 устарели
- 21. Уточнить параметры запроса в dotnetopenauth 4
- 22. DotNetOpenAuth OpenID на проблему обратного прокси ISA 2006
- 23. OpenID не работает с DotNetOpenAuth после обновления до ver4
- 24. Настройка поставщика OpenID с помощью идентификаторов поддоменов с использованием DotNetOpenAuth
- 25. Построить режим провайдера OpenID check_authentication «без гражданства» с помощью DotNetOpenAuth
- 26. Как запустить демо DotNetOpenAuth?
- 27. DotNetOpenAuth Проблема с Yahoo!
- 28. DotNetOpenAuth OpenID Provider «Последовательность содержит более одного элемента»
- 29. dotnetopenauth, MVC2 И не найдено конечной точки OpenID
- 30. TTURLMap с строками запроса? (NSNull ошибка длины)