oauth2
基本概念Oauth是一种授权机制,由资源的所有者告诉系统,同意第三方进入系统获取资源,系统会产生一个短期的进入令牌(token)供第三方应用使用
交互角色
资源所有者:即用户,用户在某些情况下会需要访问自己的资源
客户应用:通常是一个web或者无线应用,他需要访问用户的受保护资源
资源服务器:存储受保护的资源,定义了可访问资源的api,接收并验证客户端的访问令牌以决定是否授权访问资源
授权服务器:负责验证资源所有者的身份并向客户端办法访问令牌
使用场景开放系统间的授权社交登录如使用github账号登录gitee
开放api令牌与密码令牌与密码都可以用来进入系统,但有差异
令牌是短期的,到期会自动失效, 用户自己无法修改,密码一般长期有效,用户不修改不会发生变化
令牌可以被资源拥有者撤销,会立即失效
令牌范围有限
授权方式不管哪一种授权方式,第三方应用申请令牌之前,都必须到系统备案。说明自己的身份,然后会拿到两个身份识别码,客户端ID(client ID)和客户端密钥(client secret)。这是为了防止令牌被滥用,没有备案过的第三方应用,是拿不到令牌的。
授权码 autho ...