跳到主要内容

OpenID Connect (OIDC) vs OAuth 2.0

· 阅读需 4 分钟

OIDC(OpenID Connect)协议是基于 OAuth 2.0 协议之上的,因此它们的流程有相似之处,但也有不同之处。

OAuth2.0 实际上只是一种授权协议,不是认证协议。 在 OAuth 2.0 协议中,不管是哪一种授权模式,最终的结果都是返回令牌并赋予客户端一定的权限。OAuth 2.0 协议只解决了授权的问题,客户端只要得到了资源所有者的授权就能访问资源,但实际资源服务器和授权服务器并不知道访问资源的客户端身份。

OIDC 在 OAuth 2.0 协议的基础上增加了身份认证的功能。 主要是通过 ID Token 来传递身份信息。因此,OIDC 协议的流程中多了一些与身份认证相关的步骤,比如通过授权码换取 ID Token 和用户信息、校验 ID Token 等。 总的来说,OIDC 和 OAuth 2.0 协议的流程相似但并不完全相同,OIDC 在 OAuth 2.0 协议的基础上增加了一些与身份认证相关的步骤和机制,以实现更加安全和可靠的身份认证。

关于 Chrome 浏览器 Cookie 问题

· 阅读需 3 分钟

谷歌 Chrome80 在 2020 年 2 月 4 号发布的版本(schedule)会逐渐屏蔽第三方 Cookie,即默认为所有 Cookie 加上 SameSite=Lax 属性(Cookies default to SameSite=Lax),并且拒绝为不安全的 Cookie 设置 SameSite=None 属性(Reject inSecure SameSite=None cookies),这样是为了从源头屏蔽跨站请求伪造 CSRF(Cross Site Request Forgery)漏洞。