我们的服务提供商要求提供以下有关 SAML 集成的信息。
- 身份提供者 ID(例如http://myadfs.domain.com/adfs/services/trust)
- XML 元数据(例如http://your-adfs-domain.com/Federation/Metadata/2007-06/Federationmetadata.xml)
- 用户名属性(例如http://myadfs.domain.com/ws/2008/06/identity/claims/windowsaccountname)
现在这是我第一次尝试使用 SAML,我需要构建身份提供程序,并且我想使用ASP.NET Core Identity进行用户身份验证。
据我了解,流程将是
- 在服务提供商站点上,他们有一个使用 SAML SSO 登录的按钮
- 单击该按钮将重定向到身份提供者的登录页面
- 输入用户名和密码,并使用 asp.net 核心身份对我们的数据库进行身份验证
- 如果成功,返回索赔信息
- 登录到服务提供商站点
我研究并发现了几个与 ASP.NET Core 的开源 SAML 集成,例如 Sustainsys 或 ITfoxtec。Sustainsys 有几个样本,看起来SampleIdentityServer4AspNetIdentity是要走的路。
- 使用 .net 身份构建身份提供者是否合适?
- 什么是
new EntityId("https://localhost:44342/Saml2")
和new EntityId("http://localhost:52071/Metadata")
在哪里,我在Startup.cs
哪里可以获得这些值?
任何指导将不胜感激。