我正在将SimpleSAMLphp服务器设置为IdP。在我的authsources.php
中,我配置了3个auth模块:multiauth:MultiAuth
,saml:SP
和基于SQLAuth模块的自定义模块。
当我访问默认的simplesamlphp登录页面时:examample.com/simplesaml/module.php/core/login
我提供了3个auth选项。
我想要的是当我访问该登录页面时,它应该直接重定向到其中一个模块登录页面,例如multiauth:MultiAuth
这是/multiauth/selectsource.php
我无法直接重定向,因为它要求AuthState
参数,这是我的问题。
在metadata/saml20-idp-hosted.php
中,你需要提供一个auth
参数,它指定你希望用于IdP的认证源,即如果你在multiauth:MultiAuth
中定义了一个config/authsources.php
认证源,如example for that module:
'example-multi' => array(
'multiauth:MultiAuth',
...
那么对于你的IdP你的metadata/saml20-idp-hosted.php
应该包括:
'__DYNAMIC:1__' => [
'host' => '__DEFAULT__',
'privatekey' => 'example.org.pem',
'certificate' => 'example.org.crt',
'auth' => 'example-multi',
],
这将指定此IdP的默认身份验证源。