什么身份验证系统(OpenID、Facebook 等)允许无 Javascript 和/或无 Cookie 操作?

信息安全 验证 饼干 javascript 打开ID asp.net-mvc
2021-08-13 20:25:30

我正在寻找一个依赖于 3rd 方(ADFS、OpenID、SAML)但不依赖于 cookie 或 Javascript 的身份验证系统......或者至少可以使它们成为可选的。

我的意图是优雅地降级和维护状态,而不是在 cookie 中,而是将会话信息保存在受 HTTPS 保护的 URI 中,每个请求都会重复该 URI。

哪些身份验证系统支持这种原始浏览?

虽然这个问题不直接处理我的网络服务器(无论如何都不重要),如果您能提及哪个身份验证库最适合或不适用于给定的提供者,我将不胜感激:

有帮助的答案会告诉我哪些技术支持或不支持无 cookie 登录,以及哪些技术支持.js免费登录

  • 谷歌 OAuth:

  • 打开身份证

  • Facebook

  • 领英

  • ADFS

  • ???

一个很好的答案会告诉我使用的技术和相应的库是

  • WIF 无需 cookie 或 Javascript 即可工作。协议是 WS-Auth/Fed 与 ADFS 服务器。参考

  • 无线网络???使用 ADFS 服务器的 WS-Fed(+SAML 令牌)协议。

  • 领英工具包:

  • Facebook 集成 API:

  • DotNetOpenAuth:

这个想法是,即使底层技术可能支持 cookie free 和 JS free 身份验证,相应的库以不支持的方式实现。

请贡献您所拥有的任何知识,以便我可以将这些信息分类为一个很好的摘要,以造福所有人。

3个回答

开箱即用的 ASP.NET 可以处理无 cookie 会话处理。因此,任何使用 ASP.NET 会话的机制都可以在没有 cookie 的情况下工作。与 ADFS v2 结合使用的 Windows Identity Foundation 将在无 cookie 的情况下工作,但每次返回 STS 时,都需要重新进行身份验证,以免获得 SSO。

WIF 将与 MVC 一起使用。

我无法与任何其他平台交谈,因为我的专长是 WIF/ADFS。

编辑:两者都不需要 JavaScript。此外,WIF 将处理 SAML 令牌,但不处理协议本身。V1 仅支持 WS-Auth/Fed。

一种方法是使用“功能 URL”,其中 URL 包含秘密令牌。令牌的知识是访问资源所需的全部内容。

要了解有关此方法的更多信息,请阅读有关web-keysweb-calculus 的信息。(有人提到秘密令牌通过 Referer: 标头泄漏的风险;有关减轻该风险的方法,请参阅 web-keys 论文。)但是,不要期望这种方法是对现有的简单修改应用。

OpenID 无需 JavaScript 即可工作只有常用的 openid-selector 需要 JavaScript,但只需显示 openid 输入字段即可优雅地回退。

在我们的应用程序中,我们不使用 openid-select JavaScript,而是使用带有指向 Google、Yahoo 和 MyOpenId 链接的静态图像。

我们没有所有其他 openid 提供程序的快捷方式,因为 Google、Yahoo、MyOpenId 是常用的。其他的需要在进行重定向之前输入用户名,这非常不方便,并且如果没有 JavaScript 则无法实现。

此外,我们还有标准的 openid 输入字段。

cookie 问题在原始帖子的评论中进行了讨论。