作者回复: https://tools.ietf.org/html/rfc6749#section-4.3,你看下rfc6749规范,需要Content-Type: application/x-www-form-urlencoded,POST时以body(urlencoded格式)传输
作者回复: 用户凭证应该是客户凭证(clientId+secret),用来标识这个oauth2客户应用的,user/pass是用户标识用户身份,一个应用可以有很多个用户,他们通过这个客户应用client app去访问他们在资源服务器上的资源。
作者回复: 谢谢支持🌹
作者回复: 好建议谢谢🌹后继考虑增加权限系统模块的视频或文章,敬请关注
作者回复: 这用用法也是可以,Zuul相当于是一个oauth2代理,整个是一个变种的授权吗模式,Zuul就是Client App,好处是安全性会更高。业界也有人这么玩,实际会更复杂一些,可以支持多应用场景,但Zuul上要管理会话状态,有兴趣你可以参考:https://github.com/madumalt/oauth-proxy
作者回复: 谢谢支持!加油!
作者回复: 我的案例比较简单,其中的确没有用到scope。scope是oauth2协议支持的一种标准作用域(或权限)机制,现实中有些场景下可以使用scope的,比如读写权限区分,当然资源服务器端要解释scope并做权限判断逻辑。当然,你也可以完全不用scope,而采用其它权限机制,比如根据用户关联的角色进行鉴权等。
作者回复: 谢谢你的建议,很中肯!课程后续的综合案例部分的实验已经升级到spring boot 2.x版本。
作者回复: security oauth2可灵活配置,lab04的oauth2用的是一种较简单jdbc方式(使用h2数据库),可参考,另外网上有很多spring security oauth2+jdbc例子,可搜一下。
作者回复: 如果生产流量大且令牌访问频繁(例如校验),这时仅用DB会有瓶颈,一般需用redis等缓存令牌,加快访问速度。
作者回复: 如果是普通令牌,可通过oauth2的令牌校检(introspect)端点校验令牌并获取用户信息,然后可以http header等形式往后传递,本课程第9模块综合案例部分会有单独讲解,采用网关集中令牌校验方式。如果用jwt令牌,则令牌是自包含自校验的,令牌里头就有用户信息。
作者回复: CAS支持多种认证授权协议,oauth2也是CAS支持的一种协议