Когда пользователь нажимает OpenIdButton для входа в систему myOpenID, они перешли к myOpenID, входят в систему страница и запрашиваются Имя пользователя и пароль.
Возвращенный ClaimedIdentifier запускается с https (отметьте'),
Когда пользователь вводит их имя пользователя в управлении OpenIdLogin, возвращенный ClaimedIdentifier запускается с http (не').
Почему это происходит? Что еще более важно, как я могу полагаться на последовательное имя пользователя в своей базе данных, если возвращаемое значение может измениться в зависимости от метода входа в систему?
Действительно ли это - ошибка, или я делаю что-то не так?
Ken
Одним из методов (хотя и не рекомендуемым) может быть удаление пути протокола из URL.
Также, это не ошибка в библиотеке, это просто один и тот же провайдер возвращает разные идентификаторы для разных методов аутентификации - Google тоже так делает (аккаунты против профилей).
Когда пользователь вводит 'x.myopenid.com', он переводится (согласно спецификации) как 'http://x.myopenid.com', поэтому сервер возвращает идентификатор http://.
Если бы пользователь ввел https://x.myopenid.com, сервер вернул бы идентификатор https://.
Другое дело, что MyOpenID должен перенаправлять с http на https, но не делает этого.