2014-08-28 37 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,但我会建议不要这样做。

相关问题