2016-06-10 5 views
0

simplesamlphp에서 리디렉션을 설정하여 사용자가 인증을 위해 보내기 전에 액세스하려는 페이지로 되돌아 가려고했습니다.문제 SimpleSAMLphp에 대한 ReturnTo 리디렉션 이해

다음과 같이 설정 원격 IDP 메타 데이터와
$as->requireAuth(array("ReturnTo" => $returnURL, 'KeepPost' => FALSE)); 

(예 제거) :

$metadata['sample'] = array(
    'name' => 'sample', 
    'entityid' => 'https://sample.com/saml/module.php/saml/sp/metadata.php/sample', 
    'metadata-set' => 'saml20-idp-remote', 
    'SingleSignOnService' => 
     array (
     0 => 
      array (
       'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect', 
       'Location' => 'https://sample:port/idp/startSSO.ping?PartnerSpId=https://sample.com/saml/module.php/saml/sp/metadata.php/sample' 
      ) 
    ), 
    'keys' => array(...) 
); 
내가 매개 변수를 전달해야

"TARGET

나는 ReturnTo 옵션을 사용하고 있습니다 "idp startSSO 위의 메타 데이터에 있지만"ReturnTo "옵션을이 SSO URL에 추가하는 방법을 찾을 수 없습니다. 나는 또한 SAML redirect xml을 캡쳐/검사했으며 ReturnTo는 거기에 전혀 없다. 누구든지이 작업을 수행하는 방법을 알고 있습니까? 인증에 보내지기 전에 다시 에 접속을 시도하려는 페이지를 사용자가 취할 simplesamlphp에서 리디렉션을 설정하려고

답변

1

.

옵션없이 ReturnTo 메서드를 사용하면 사용자가 액세스하려고 시도한 페이지로 리디렉션됩니다.

From documentation

ReturnTo (문자열)
의 URL 사용자가 인증 후 반환해야합니다. 기본값은 현재 페이지로 사용자를 반환하는 것입니다.

인증이 필요한 페이지에만이 코드를 포함하십시오.

require_once 'path/to/simplesamlphp/lib/_autoload.php'; 

$as = new SimpleSAML_Auth_Simple('default-sp'); 
$as->requireAuth();