各位大佬好,最近在做OAuth相关的一些东西,做着做着有一些疑问,刚接触,希望各位大佬可以批评指正。问题主要围绕授权码模式和密码模式展开
授权码模式
授权码模式是客户端在访问的时候,重定向到授权服务器,进行验证登录之后,会返回一个短暂有效的code到redirect_url,于是便可以拿着这个code和secret进行验证,通过后返回access_token,这样就可以拿到token进行请求资源了
密码模式
在客户端直接输入账户密码,由客户端将账户密码发送到授权服务器进行认证,通过之后返回token
疑问
- 密码模式的缺点是会暴露账户给客户端造成不安全
- 同时我也疑惑为什么授权码模式一定要有一个短暂有效的code来请求token,最终token不是都会返回来吗
我的设想
客户端重定向到授权服务器,在授权服务器上进行认证之后,直接返回access_token,过程采用Http-only Cookie(防止XSS攻击)。
这样不是既简便,又安全吗。
希望大佬指教一下(我是菜鸡我是菜鸡呜呜呜,菜鸡勿骂)