c# - 使用 Kentor.AuthServices.StubIdp 作为生产 IDP

标签 c# asp.net asp.net-web-api saml-2.0 kentor-authservices

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

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

我计划在 StubIdp 之上构建 IDP,因为我负担不起像 ComponentPro 这样昂贵的解决方案.

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

最佳答案

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

  1. SP 发起,其中 SP 向 Idp 发送 AuthnRequest,而 Idp 使用 SamlResponse 进行回答。
  2. 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/

相关文章:

asp.net-mvc - 为什么输出缓存不适用于我的 ASP.NET MVC 4 应用程序?

c# - 使用 EPPlus 生成的 Excel 文件中的内容不可读

c# - 由 Visual Studio 2015 创建的 C# 程序的哪些文件值得提交到存储库中?

c# - 如何缓存具有多个属性的对象

c# - ASP Gridview 下拉列表选择已更改,如何填充 rowDataBound() 以外的下拉列表

c# - 跨两个 Web API 项目共享 OAuth token

asp.net-mvc - 使用 web api 和 asp.net mvc 5 单点登录

c# - 如何修改请求的http头; C# 中的 Web 引用

c# - 删除尾部斜杠 - 不使用 IIS 重写 ASP.net

asp.net - 如何使用 asp.net 和 C# 强制回发