2014-08-28 31 views
2

所以,我試圖將我的應用程序與SimpleSAMLphp集成。Simplesamlphp - 在與我的應用程序集成時卡在simplesamlphp頁面

我不得不IDP配置和他們倆都工作正常(我可以simplesamlphp管理頁面上進行測試,通過「測試配置的認證源」)

但是,當我嘗試使用我的應用程序集成,後與境內流離失所者在洛,我陷在simplesamlphp頁

像這樣:

  1. 我打開我的應用程序

  2. 我的應用程序調用requireAuth,它將我重定向到simplesamlphp頁面,在那裏我可以選擇要使用哪個IdP

  3. 我選擇一個IdP。我被重定向到IdP頁面。我成功登錄。

  4. IdP將我重定向回simplesamlphp IdP選擇屏幕。我被困在這裏,因爲當我打開我的應用程序時,它將我重定向到同一頁面。

是否有人知道我在做什麼錯?我認爲這是一個配置問題,但我不知道哪一個可能。另外,isAuthenticated函數總是返回false。

這裏是我的應用程序代碼

<?php 
require_once ('/var/simplesamlphp/lib/_autoload.php'); 

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

if ($as->isAuthenticated()) { 
    die ('ok'); 
} else { 
    $param = array (
    'ReturnTo' => 'http://teste.localhost' 
); 
    $as->requireAuth ($param); 
} 

$attributes = $as->getAttributes(); 
print_r ($attributes); 

回答

0

您應該檢查從SimpleSAMLphp配置/ config.php文件的 'session.phpsession.savepath' 選項。如果這與應用程序的會話保存路徑不一致,那麼在IdP重定向回您時會話ID會發生變化,並且SimpleSAMLphp將無法識別登錄名並將嘗試再次對您進行身份驗證。 另一個快速和骯髒的修復方法是在php.ini中將session.auto_start設置爲1,但我會建議不要這樣做。