2012-10-31 2 views
0

SAML2.0 기반 사용자 ID 시스템을 사용하여 클라이언트 용 서비스 제공자 (SP) 사이트를 구축하려고합니다.SimpleSAMLphp (SAML 2.0)와 CMS Made Simple (CMSMS)의 통합

내 서버에 simpleSAMLphp를 설치할 수 있었고 열린 IdP 인증 네트워크에서 테스트했습니다.이 IdP에 대한 인증을 요구하는 PHP 파일을 만들면 모두 정상적으로 작동합니다. 이것을 어떤 페이지 에나 간단히 추가하면 효과가 있습니다. 나는 사용자 정의 멋지 태그 (PHP 등의 일반적인 방법)으로 위를 추가하는 경우 CMSMS 내

require_once('../simplesamlphp/lib/_autoload.php'); 
$auth = new SimpleSAML_Auth_Simple('default-sp'); 
$auth->requireAuth(); 
$attributes = $auth->getAttributes(); 

그러나, 나는 오류 "상태가 손실"얻을. 난 페이지의 본문이나 템플릿의 머리 부분에뿐만 아니라 (콘텐츠 인터페이스를 통해) 페이지 메타 데이터에 추가하려고했습니다.

난 항상 얻을 :

State information lost 
State information lost, and no way to restart the request 

사람이 잘못 갈 수 있는지 어떤 아이디어가 있습니까

? 나는이 오류 메시지 (쿠키가 php.ini에서 할당 된 도메인 조정 등)에 대한 일반적인 수정을 시도했다. 기쁨이 없습니다.

답변

4

이것은 simpleSAMLphp와 CMSMS 간의 세션 관리와 상충되는 것처럼 보입니다.

memcached를 설치하고 simplesamlphp의 PHP 세션 처리기 대신 memcache 세션 처리기를 사용하면됩니다.

+0

Andreas 자신의 답변입니다. :) 나는 영광입니다! SimpleSAMLphp로 작업 해 주셔서 대단히 감사합니다. 귀하의 제안에 따라 저는 세션 저장 데이터를 다른 방법으로 조정했습니다 - 실제로 SQL을 통해 문제가 해결되었습니다 - 정말 고마워요. – Gideon

0

유사한 세션 충돌 레즈 게시 (4.x의)와 Symfony2와도 (2.3). SQL 세션 저장소가이 문제를 해결합니다.