使用Kentor.AuthServices.StubIdp作为生产IDP

Gab*_*ert 6 c# asp.net saml-2.0 asp.net-web-api kentor-authservices

我正在尝试在我的应用程序中实现IDP(SAML2)服务器.鉴于我的应用程序具有所需的所有数据,我不希望我的任何合作伙伴要求我们的客户注册他们.

我对SAML2协议不是很熟悉.我发现项目Kentor.AuthServices.StubIdp是最有趣的,因为它实现了我需要的一切.我也知道它不是为生产目的而建的.

我打算在StubIdp之上构建IDP,因为我买不起像ComponentPro这样昂贵的解决方案.

有更好的选择吗?建立在StubIdp之上是一个好主意吗?

And*_*bel 4

SAML2 登录可以通过两种方式完成:

  1. SP 发起,其中 SP 向 Idp 发送 AuthnRequest,并且 Idp 使用 SamlResponse 进行应答。
  2. Idp-initaited,其中 Idp 发送未经请求的 SamlResponse。

Kentor.AuthServices(驱动 StubIdp 的库)包含 Idp 发起的登录所需的所有内容。查看 Stub Idp 源代码以了解它是如何完成的。

正确执行 SP 发起的登录更为复杂,因为 Idp 应该对传入的 AuthnRequest 进行一些验证。这些验证在存根 Idp 中完全缺失(这是测试环境的想法)。实现 SP 发起的登录绝对是可能的,但要安全地实现它还需要做更多的工作。