Lightopenid + Google Apps + validate () = Серверы не найдены! - PullRequest
1 голос
/ 25 октября 2010

Я использую LightOpenID и у меня есть тестовая страница, которая является почти копией примера google.php, который прилагается к нему (я добавил несколько эхо-сигналов для отладки).Нажав кнопку «Войти с помощью Google», вы попадете в Google.Я выполняю вход с действующим адресом электронной почты Служб Google и возвращаюсь на свою страницу.Но когда он пытается проверить требуемый_идентификатор, я получаю сообщение "Серверы не найдены!"сообщение.

Я нашел эту фразу в качестве руководства, но большинство ответов - просто ссылки на избранные проверки.Я углубился в код, используя frenches, чтобы показать, что код выполняется в следующем порядке ...

(Мои номера строк могут быть немного неправильными из-за всего кода отладки, который я вставил ...)

openid.php: validate () вызывается.В validate () вокруг строки 568 находится эта строка ...

$server = $this->discover($this->data['openid_identity']);

После этой строки $ server пуст, т. Е. ''.

Я могу показать, что в началеDiscover ($ url), переменная

$url = http://<my Google Apps domain>.com/openid?id=117665028262121597341  

Проблема заключается в том, что $ server не устанавливается в строке 364 (openid.php), когда вызывается htmlTag ().Тот же $ url очищается для $ content, но этот URL возвращает 404, что приводит к сбою прегов в htmlTag ()

Является ли $ url неверным?Он устанавливается непосредственно из 'openid_identity', который, я думаю, исходит от Служб Google.

Вот URL-адрес, который возвращается после успешного входа в Службы Google.

http://intranet.<my domain>.com/<my path>/validate.php?openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=id_res&openid.op_endpoint=https%3A%2F%2Fwww.google.com%2Fa%2F<my Google App domain>%2Fo8%2Fud%3Fbe%3Do8&openid.response_nonce=2010-10-25T04%3A23%3A26ZFQ4Fq3F3W1b9ug&openid.return_to=http%3A%2F%2Fintranet.<my domain>.com%2F<my path>%2Fvalidate.php&openid.assoc_handle=AOQobUeErcWBdJC6slZm3nCw_BRbvHTjpdtycleA2P89n15QCCr8fRDE&openid.signed=op_endpoint%2Cclaimed_id%2Cidentity%2Creturn_to%2Cresponse_nonce%2Cassoc_handle&openid.sig=yrja2H%2Fvufp2BqezN4NIVGA5wWM%3D&openid.identity=http%3A%2F%2F<my Google App domain>%2Fopenid%3Fid%3D117665028262121597341&openid.claimed_id=http%3A%2F%2F<my Google App domain>%2Fopenid%3Fid%3D117665028262121597341

Яновичок в OpenID, поэтому фраза или ссылка, указывающая мне правильное направление, будет принята с благодарностью.

Спасибо, Эрик Б.

1 Ответ

0 голосов
/ 25 октября 2010

(мой второй ответ) Снова появляется Mewp.Я понял.Спасибо за четкое объяснение.Я свяжусь с нашим представителем аккаунта Google, чтобы выяснить, что не так с URL, который они передают.

позаботьтесь, Эрик Б.

(мой первый ответ) Спасибо, MewpСам господин ЛайтОпенид!(хотя нет упоминания пола на вашем сайте)

Если openid.mode - это id_res, достаточно ли это / достаточно безопасно для меня, чтобы использовать утвержденный_идентичность, без необходимости выполнять валидацию ()?Пропуск что-то под названием «validate» кажется неправильным, но полученный URL-адрес и вставленный в исходное сообщение соответствует образцу ответа Google для успешного входа в систему и подтверждения, как показано здесь: http://code.google.com/apis/accounts/docs/OpenID.html#Samples

Спасибо, Эрик Б..

...