保障API访问安全:OAuth 2.0与OpenID Connect的应用实践
1. OAuth 2.0与OpenID Connect概述
OAuth 2.0规范于2012年发布,多年来积累了许多经验。2019年开始着手制定OAuth 2.1,整合了OAuth 2.0的最佳实践。OAuth 2.1有以下重要改进:
- PKCE集成 :公钥认证码扩展(PKCE)被集成到授权码授权流程中。公共客户端为提高安全性必须使用PKCE,而对于授权服务器可验证其凭证的机密客户端,使用PKCE仅为推荐。
- 废弃隐式授权流程 :由于其安全性较低,隐式授权流程被弃用并从规范中移除。
- 废弃资源所有者密码凭证授权流程 :同样因安全性问题,该流程也被弃用。
鉴于即将发布的OAuth 2.1规范方向,后续仅使用授权码授权流程和客户端凭证授权流程。
OpenID Connect(OIDC)是OAuth 2.0的扩展,可让客户端应用验证用户身份。它增加了ID令牌,客户端应用在完成授权流程后从授权服务器获取该令牌。ID令牌以JSON Web Token(JWT)编码,包含用户ID和电子邮件地址等声明,并使用JSON Web签名进行数字签名,客户端应用可通过授权服务器的公钥验证其数字签名来信任其中的信息。访问令牌也可按相同方式编码和签名,但非强制要求。OIDC还定义了发现端点和用户信息端点,前者用于确定重要端点的URL,后者用于根据用户的访问令牌获取更多认证用户信息。在对受OAuth 2.0保护的API进行自动化测试时,客户端凭证授权流程无需使用Web浏览器进行手动交
超级会员免费看
订阅专栏 解锁全文
110

被折叠的 条评论
为什么被折叠?



