Я пытаюсь реализовать этот базовый пример нашел here:Zend_Infocard, как часть проверки подлинности Zend
, в разделе «Использование в качестве части Zend_Auth».
У меня есть версия Zend Framework 1.10, Apache 2.2.11, и я использую Firefox с расширением «Карты для Firefox 3».
Приходит страница входа в систему (как показано на примере в документации), и я могу выбрать информационную карту (из селектора карт) и «отправить», но я получаю сообщение об ошибке:
array
0 => string 'Processing Failure' (length=18)
1 => string 'Failed to extract assertion document' (length=36)
В отладки эта ошибка, ошибка вызвана следующими строками кода (где исключение, потому что тип не существует):
В Zend_InfoCard_Xml_EncryptedData-> GetInstance() следующий код существует:
$sxe = simplexml_load_string($strXmlData);
switch($sxe['Type']) {
case 'http://www.w3.org/2001/04/xmlenc#Element':
include_once 'Zend/InfoCard/Xml/EncryptedData/XmlEnc.php';
return simplexml_load_string($strXmlData, 'Zend_InfoCard_Xml_EncryptedData_XmlEnc');
default:
require_once 'Zend/InfoCard/Xml/Exception.php';
throw new Zend_InfoCard_Xml_Exception("Unknown EncryptedData type found");
break;
Проблема в том, что у меня нет «Тип» в моем xml, когда я выкидываю его.
XML-выглядит примерно так:
<saml:Assertion MajorVersion="1" MinorVersion="1" AssertionID="SamlSecurityToken-9f068262-1b53-5cac-844e-624d589f9373" Issuer="http://schemas.xmlsoap.org/ws/2005/05/identity/issuer/self" IssueInstant="2010-07-08T15:08:48.343Z" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion">
.... и продолжается (со значением подписи и других элементов, но опять же без типа).
Очевидно, что я здесь что-то не так. Интересно, связано ли это с плагином firefox или отсутствием использования SSL (не используя SSL сейчас).
спасибо. Я установил SSL, но теперь я столкнулся с следующей проблемой, когда Cardpace не работает с сертификатом самооценки. –