基于声明的身份验证与OAuth提供的内容之间有什么区别。
我正在寻找概念差异,而不是技术差异。我什么时候选择声明而非OAuth,反之亦然。
基于声明的身份验证由Microsoft提出并构建在WS-Security之上。但是OAuth更像是一种开源协议,它被允许基于安全令牌从不同的门户中获取资源。
声明也有令牌的概念(SAML编码或X509证书)。
我想了解何时选择声明而不是OAuth,反之亦然。
由于
答案 0 :(得分:31)
基于声明的身份是一种将应用程序代码与身份协议(如SAML,Kerberos,WS-Security等)的细节分离的方法。它不仅适用于Web应用程序,而且实现为名为WIF的.NET库/框架。
OAuth是一种特定协议,通过该协议,一个网站可以获得用户同意访问其他网站上的私人数据。
实际上,你不会选择其中一个,实际上它们是互补的。如果您正在构建通过WIF执行OAuth的.NET Web应用程序,则可能同时使用两者。