当前位置: 首页 > 知识库问答 >
问题:

使您的PHP网站成为SAML身份提供者

杜俊风
2023-03-14

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

我从以下网站找到了PHP扩展列表:https://wiki.surfnetlabs.nl/display/OSP/RFC-OpenSAMLphp,一个支持SAML 2.0的新PHP库

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

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

任何类型的批评、想法、帮助或教程/代码示例都会很有用。

共有3个答案

归翔
2023-03-14

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

伊恩

孙宏扬
2023-03-14

SimpleSAMLphp起初似乎令人生畏,但它可以为您处理所有SAML响应。您是否考虑过创建自定义身份验证模块-http://simplesamlphp.org/docs/stable/simplesamlphp-customauth

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

弓泰
2023-03-14

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

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

 类似资料:
  • SAML是否有现成的实现将AEM作为另一个应用程序的IDP。我在谷歌上搜索了一下,发现AEM有一个OOTB配置,可以充当服务提供商(SP)。请提供信息或参考资料,使AEM成为IDP,以便授权AEM中的用户通过使用单点登录(SSO)使用其他服务提供商。提前谢谢。

  • 我需要使用谷歌身份提供商Hi将SAML 2.0与我们的应用程序集成 我们的应用程序目前在其架构中使用谷歌云平台和Firebase,我被指派使用Okta将SAML 2.0集成到应用程序中。我对两个平台上的不同术语感到困惑。我一直在Okta和谷歌云平台上遵循指南,但仍然无法成功解决这个问题。 我的问题来自Okta和谷歌云平台,我将在这里逐一提问 Okta创建一个新的应用程序时 受众URI(SP实体ID

  • 我有一个spring应用程序,我正试图通过第三方身份提供商使用单点登录进行设置。 我在测试中有这个功能,但当我将它移到prod时,它正在循环。 我的应用程序发送SAMLRequest,然后我输入用户名和密码。IdP将SAMLACK发送到https://example.com/saml/SSOendpoint。此时,它应该像测试中那样302重定向到我的登录控制器,但它最终循环返回并302'到IdP。

  • 我正在寻找通过内部ADF和shibboleth Idp(身份提供商)实现SAML身份验证的解决方案。 有没有人有使用onelogin php工具包的经验? 此库是否适合或仅用于onelogin SAML Idp? https://github.com/onelogin/php-saml 看起来很有希望,另一种选择可能是simpleSamlphp,但onelogin似乎更受欢迎。 非常感谢

  • 我已经创建了身份提供程序,并且从浏览器中它工作正常。 参考:密钥斗篷身份提供程序后代理登录抛出错误 从浏览器,我可以使用外部IDP登录,如果外部IDP用户不在keycloak中,它会在keyclock中创建,这绝对没问题,并重定向到仪表板。 但我的问题是,我们如何用keycloak rest api实现这个流程? 是否有任何api用于使用外部IDP登录,并将获得外部IDP的令牌以及密钥斗篷的令牌?

  • 我对SAML比较陌生,并且偶然发现了OneLogin Python SAML库。我能够让它启动并运行,我的web应用程序是服务提供商(SP),OneLogin是身份提供商(Idp)。 我希望能够添加对其他身份提供者的支持。然而,我发现python saml库正在使用设置。json获取Idp信息。我已经研究了他们的Github项目中的以下问题,但无法获得可行的解决方案:[1]https://gith