43、微服务安全:OAuth 授权与 JWT 令牌详解

微服务安全:OAuth 授权与 JWT 令牌详解

1. OAuth 授权码授予类型

OAuth 定义了多种授权类型,这里主要探讨授权码授予类型,它适用于能在与授权服务器进行身份验证时对客户端凭证保密的 OAuth 客户端。在微服务场景中,API 网关作为运行在安全服务器上的“客户端”。

1.1 授权码授予类型的流程

以下是访问受保护资源的端到端授权流程的典型交互序列:
1. 终端用户在浏览器中输入 URL。
2. 通常为单页应用(SPA)的表示层组件被下载到浏览器中,并渲染第一页或默认页面。在应用的整个生命周期内,SPA 资源(HTML + CSS + 脚本)仅加载一次,后续仅传输数据。
3. 浏览器中的用户点击和操作会被 API 网关拦截。API 网关作为 OAuth 客户端,由于它是安全的服务器端微服务,因此在与授权服务器进行身份验证时能够对客户端凭证保密。
4. 如果请求需要来自受保护资源的数据,API 网关会引导资源所有者的用户代理到授权端点。此时,OAuth 客户端会包含其客户端标识符、请求的范围、本地状态和重定向 URI。当对受保护资源的访问被允许或拒绝后,授权服务器会将用户代理重定向回客户端指定的重定向 URI。
5. 授权服务器通常会要求用户进行身份验证,以确认声称是资源所有者的用户是否确实是实际的资源所有者,以及他们可以授予客户端哪些权限。授权服务器可以与资源服务器是同一台服务器,也可以是独立的实体。
6. 授权服务器通过用户代理对资源所有者进行身份验证。用户的身份验证信息直接在用户(通过用户代理)和授权服务器之间传递,客户端无法看到这些信息。
7. 身份验证可以通过内部身份验证服务器完成

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值