我正在尝试在我的应用程序中实现 IDP (SAML2) 服务器。鉴于我的应用程序具有所需的所有数据,我不希望我的任何合作伙伴要求我们的客户在他们这边注册。
我对 SAML2 协议(protocol)不是很熟悉。我找到了项目 Kentor.AuthServices.StubIdp是最有趣的,因为它实现了我需要的一切。我也知道它不是为生产目的而构建的。
我计划在 StubIdp 之上构建 IDP,因为我负担不起像 ComponentPro 这样昂贵的解决方案.
有没有更好的选择?在 StubIdp 之上构建是个好主意吗?
最佳答案
SAML2登录可以通过两种方式完成:
- SP 发起,其中 SP 向 Idp 发送 AuthnRequest,而 Idp 使用 SamlResponse 进行回答。
- Idp-initaited,其中 Idp 发送未经请求的 SamlResponse。
Kentor.AuthServices(驱动 StubIdp 的库)包含 Idp 启动的登录所需的一切。在 Stub Idp 源代码中查看它是如何完成的。
正确执行 SP 发起的登录更加复杂,因为 Idp 应该对传入的 AuthnRequest 进行一些验证。 Stub Idp 中完全没有这些验证(这是测试环境的想法)。实现 SP 发起的登录绝对是可能的,但要安全地进行,还需要做很多工作。
关于c# - 使用 Kentor.AuthServices.StubIdp 作为生产 IDP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33681204/