在过去的一周里,我对将单点登录与SAML 2.0. 找了很多好文章,详细了解了SSO的流程,但是在我们的C#.Net Framework 4.5解决方案中实现的时候遇到了问题。
让我描述一下我对这个过程的理解以及我应该如何应用它:
用户访问我们的软件,即服务提供商 (SP)。我们正在根据客户的需求调整不同的实例。
输入电子邮件地址后,他应该被重定向到我们的身份提供者 (IdP)。在这一点上,我相信我应该发送一个身份验证令牌来检查用户是否尚未登录 IdP。如果用户是,我想将用户登录到我们的系统。如果他不是,他将登录他们的 IdP。
SAML响应令牌发送回我们的网站 URL。到目前为止,我还没有找到关于生成 SAML 请求的实际过程或SAML在C#代码中解密我们的令牌的方法的任何好的资源。
对于测试,我们使用 ADFS 2.0 作为 IdP,我们SAML从中获取响应。当我们处理响应时,我们希望将数据库中的信息与响应中的电子邮件进行比较,以在让用户进入系统之前验证用户详细信息。
我能找到的例子要么已经过时,要么没有给出详细的解释。如果有人能够通过提供一些实施示例或我尚未设法找到的良好且最新的资源来为我照亮它。