将您的PHP网站制作成SAML Identity Provider



故事是我需要让我的网站充当身份提供者(读作:IDP)。网站本身在Zend平台上。想法是制作一个IDP控制器,服务提供商(读作:SP)通过该控制器联系IDP。由于它必须是网站的一部分,我需要包括一些扩展,可以很容易地用于响应SP的SAML请求。

我从以下位置找到了PHP扩展列表:https://wiki.surfnetlabs.nl/display/OSP/RFC+-+OpenSAMLphp,+a+新的+PHP+库+for+SAML+2.0+支持

所有这些扩展都几乎没有文档,或者过于复杂。例如,我还没有找到在我的应用程序中使用SimpleSamlPHP的方法,而且从中提取有用的代码看起来非常耗时(我真的没有了)。此外,我发现所有这些都很难在网站中实现。

几天来,我一直在谷歌上搜索和检查github,试图找到使用一些库的简单方法(现在我正在尝试实现Lasso,这似乎很合理,但不幸的是,缺乏如何将其用作IDP的好例子/信息)。

任何形式的批评、想法、帮助或教程/代码示例都是有用的。

我写了一本指南,介绍如何在开源软件(Tiki wiki)上使用simplesamlph部署IdP,以及如何将IdP连接到谷歌或salesforce。看看:

https://github.com/pitbulk/tiki-saml/blob/master/doc/tiki_wiki_as_idp.rst

SimpleSAMLphp一开始看起来很吓人,但它可以为您处理所有SAML响应。您看过创建自定义身份验证模块吗http://simplesamlphp.org/docs/stable/simplesamlphp-customauth

您可以很容易地将这个模块与现有的登录机制联系起来。

查看Ping Identity中的PingFederate和PHP集成工具包。或者,还有无代理集成工具包(而不是PHP),它允许您使用RESTful API调用对PingFed服务器进行集成,而不是嵌入任何PHP库。

HTH,Ian

最新更新