过去一周,我对SAML 2.0
使用单点登录的主题进行了大量研究。我发现了很多好文章,我详细了解了SSO的过程,但是在使用.Net Framework 4.5的C#
解决方案中实现它时遇到了问题。
让我描述一下我对这个过程的理解以及我想如何应用它:
用户访问我们的软件即服务提供商(SP)。我们根据客户的需求调整了不同的实例。
输入电子邮件地址后,应将其重定向到我们的电子邮件地址 身份提供者(IdP)。在这一点上,我相信我应该发送 用于检查用户是否尚未记录的身份验证令牌 在IdP上。如果用户是,我想要登录用户 到我们的系统。如果他不是,他会登录他们的IdP。
SAML
响应令牌发回我们的网站网址。 到目前为止,我还没有在生成SAML请求的实际过程中找到任何有用的资源,也没有找到解密SAML
代码中C#
令牌的方法。
对于测试,我们使用ADFS 2.0作为IdP,我们从中得到SAML
响应。当我们处理响应时,我们希望将数据库中的信息与响应中的电子邮件进行比较,以便在让用户进入系统之前验证用户的详细信息。
我能找到的例子已经过时或者没有给出详细解释。如果有人能够为我发光,可以提供一些实施例子或者我尚未设法找到的最新资源。
答案 0 :(得分:1)
SAMl 2.0不是一个简单的协议,因为你发现自己推出它并不是一件容易的事。
使用SAML客户端侧堆栈。
请注意,微软没有正式版。
请参阅SAML : SAML connectivity / toolkit了解一些想法。
这将为您完成所有繁重的工作和管道工作。