我如何模拟 SAML 的身份提供者?

How can I simulate an identity providers for SAML?

我正在编写一些 SSO 代码,它将允许任何支持 SAML 的 IdP 使用我的代码进行授权。 我需要一个 IdP 模拟器,它可以为我提供带有 Idp 配置的元数据 URL,以便我可以测试我的代码。 (我在我的代码中提供了 SP 配置)。

我搜索但找不到某种模拟器,如果我同时提供 IdP 和 SP 配置,我只找到管理应用程序的工具,这不是我要找的。

非常感谢!

SAMLtest.id 是一项免费的 SAML 2.0 测试服务,可让您测试 SAML-compliant 服务提供商(根据您的描述,这实际上就是您所拥有的)。您需要上传代表您的 SP/您的应用程序的元数据文档,然后您将能够下载 SAMLtest 元数据以用于形成您的一半集成。

这实际上是 new 版本的 TestShib,几个月前由于缺乏社区支持而关闭,我经常使用它。

祝你好运!

或者,您也可以使用 SSOCircle ,它也提供免费的 SAML IdP (https://www.ssocircle.com/en/portfolio/publicidp/)。例如。它被配置为 Spring 安全 SAML 扩展的默认 SAML IdP。

(I) How to build and run Shibboleth SAML IdP and SP using Docker container 在 GitHub 存储库允许您在自己的测试台上构建和 运行 独立的 IdP 模拟器。 运行您自己安装一个独立的 SAML IdP 模拟器允许您通过检查您开发的 IdP 和您的 SP 的服务器日志来测试您的 SP 代码和调试您的 SAML SP 日志。

(1) 从 How to build and run Shibboleth SAML IdP and SP using Docker container 的 GitHub 存储库

下载源代码
git clone https://github.com/winstonhong/Shibboleth-SAML-IdP-and-SP

(2) 将您的 SP 元数据文件复制到

shibboleth-idp-dockerized/ext-conf/metadata/

(3) 从

中提取 IdP 元数据文件 "idp-metadata.xml"

shibboleth-idp-dockerized/ext-conf/metadata/

并上传到你自己开发的SP服务器

(4) 按照 README 说明使用 Docker 容器 运行 OpenLDAP 服务器和 SAML IdP 服务器

(5)运行你开发的SP服务器

(6) 现在您可以检查 Shibboleth IdP 和您的 SP 服务器的服务器日志来调试您的 SP 代码。

另外,shibboleth-sp-testapp/文件夹提供了您自己开发的SP服务器的参考SP配置。

(II) 另一个 Whosebug 问题 讨论了 IdP 和 SP 之间的 SAML 配置。

(III) TestShib 是在线 Shibboleth IdP 模拟器,由 Shibboleth 社区构建 运行。和上面自己搭建的独立Shibboleth IdP模拟器完全一样运行