没有phpCAS可以在CAS响应中获取属性吗?

时间:2013-12-02 17:22:55

标签: php cas saml phpcas

我们在几个使用phpCAS的网站上使用CAS。它返回一个响应,其中包含用户名和许多属性,如电子邮件和显示名称。

因此,以下内容回应了所有属性(全名,电子邮件等......)

<?php
foreach (phpCAS::getAttributes() as $key => $value) {
if (is_array($value)) {
echo '<li>', $key, ':<ol>';
foreach($value as $item) {
      echo '<li><strong>', $item, '</strong></li>';
    }
echo '</ol></li>';
} else {
    echo '<li>', $key, ': <strong>', $value, '</strong></li>';
  }
}
?>

现在,我正试着看看我是否可以在没有phpCAS的情况下做到这一点,所以我们可以将它作为插件共享,而无需用户安装phpCAS。

我收到了回复,我可以对用户进行身份验证,所以基本上它可以正常运行,但我只是在响应中获取用户名。如果没有phpCAS,我需要做些什么才能获得这些属性?

如果我理解正确,这可能与声明可能被重新获得属性的SAML有关:

phpCAS::client(SAML_VERSION_1_1, $cas_host, $cas_port, $cas_context);

所以,也许我的问题应该是,有没有办法在没有phpCAS的情况下完成同样的事情?

1 个答案:

答案 0 :(得分:0)

您可以滚动自己的代码。简要说明位于https://wiki.jasig.org/display/CASUM/SAML+1.1。您可能需要更多Google,因为可能缺少一些细节。