我正在开始为项目添加 SAML SSO 支持,并且正在寻找专门针对 PHP 的任何有用资源。我了解基本概念,并且已经四处寻找任何可以提供帮助但空无一物的库。我发现的唯一东西是simpleSAMLphp,它似乎是一个完整的堆栈。
将 SAML 集成到现有项目中的任何提示?Zend-Framework 相关建议的奖励积分!
我正在开始为项目添加 SAML SSO 支持,并且正在寻找专门针对 PHP 的任何有用资源。我了解基本概念,并且已经四处寻找任何可以提供帮助但空无一物的库。我发现的唯一东西是simpleSAMLphp,它似乎是一个完整的堆栈。
将 SAML 集成到现有项目中的任何提示?Zend-Framework 相关建议的奖励积分!
我认为 SimpleSAMLPHP 是让您的应用程序充当成熟的 SAML 2.0 服务提供者的方法。它确实是一个完整的堆栈,但您可以将功能缩小到最低限度。
根据我的经验,配置比使用 Shibboleth 简单得多。使用分发包附带的配置网站简化了此步骤。
对每个PHP页面的影响都比较小:http ://simplesamlphp.org/docs/1.8/simplesamlphp-sp#section_6
这是我们在 Zend 环境中选择的解决方案。
我们将 OneLogin 的 PHP-SAML 工具包用于一个使用非透明代理的项目(simpleSAMLphp 不喜欢不知道它所在的 URL)。
支持最基本的登录非常简单,但 SAML 2.0 是一个巨大的规范,它可能不支持您想要的内容(例如,它不支持签名身份验证请求)。
我们使用了 SamlSpBundle,我们发现它非常可配置且对 Symfony2 很友好。如果您不在 Symfony2 框架上,您可能会查看它的基础库lightsaml,它是一个独立的。
虽然不是 PHP 特定的解决方案,但也许Shibboleth对您来说是一个可以接受的解决方案 - 它支持 Apache 和 IIS,并且可能与任何 Web 框架一起使用 - java/php/asp.net。这也有助于成为您的网络服务器中的过滤器插件,因此您的应用程序将需要最少的(如果有的话)修改来使用它
http://framework.zend.com/manual/en/zend.infocard.basics.html有 SAML1.0,但从那时起 SAML 继续前进......