.net 核心和 SAML 2.0

Posted

技术标签:

【中文标题】.net 核心和 SAML 2.0【英文标题】:.net core and SAML 2.0 【发布时间】:2017-06-25 13:45:27 【问题描述】:

我们的大学已迁移到使用 Shibboleth 的基于 SAML 的身份验证/授权方法。

我至少已经研究了一天如何将 SAML 与 .net 核心 Web 应用程序一起使用。我不能使用身份服务器 4,因为它用于 OaTH/Open ID。我在msdn 上找到了一些指向商业实现的文档。我在一年前遇到了这个SO 的回答,说Kentor 将来可能会支持它,但在github 页面上找不到任何关于支持.net core 或.net core 示例Web 应用程序的信息。截至 1 月,它仍在计划中,但没有日期。

大学正在运行身份提供程序。我不明白的是:

    如何设置我的 Web 应用程序以使用该身份提供者? 如何检查该身份提供者是否已针对另一个应用程序进行身份验证,以便使用 SSO?

此外,我们将非常感谢任何使用 SAML 而没有商业插件的示例应用程序。

【问题讨论】:

【参考方案1】:

ITfoxtec 有一个 ASP.NET MVC Core 1.0 SAML2 插件,但它需要 .NET Full Framework,并且不能在 linux 上运行。有一些缺失的 API 目前阻碍了对 SAML2(围绕 Crypto XML 命名空间)的完整 .NET Core 支持。 https://github.com/ITfoxtec/ITfoxtec.Identity.Saml2

据我所知,这并不完全是您要寻找的东西,但它可能是 .NET Standard 2.0 之前的临时解决方案,它可能会将缺少的 API 带入 .NET Core。

【讨论】:

【参考方案2】:

ITfoxtec Identity Saml2 从 3.0.0 版开始支持 .NET Core 2.1(不带 .NET Framework)。项目:https://itfoxtec.com/IdentitySaml2

ITfoxtec Identity Saml2 MVC Core 支持 ASP.NET MVC Core 2.1。 NuGet 包:https://www.nuget.org/packages/ITfoxtec.Identity.Saml2.MvcCore/

【讨论】:

以上是关于.net 核心和 SAML 2.0的主要内容,如果未能解决你的问题,请参考以下文章

在 C# .NET 4.5 中使用 SAML 2.0

在 asp.net 中使用 SAML 2.0 的 SSO

应用程序中断访问 dbcontext、Asp .net 核心 web api 2.0 与实体框架核心 2.0 数据库第一种方法

服务提供者之间的 SAML 2.0 身份验证断言(C#、.net、MVC4、组件空间)

如何让 JWT 在 Autorest 生成的 SDK 中工作? (ASP.NET 核心 2.0)

带有 Yahoo Asp.net 核心 2.0 的 OAuth