核心知识点
认证服务器中token设计: 默认是UUID,另外一种是设置JWT令牌。
认证服务器中Oauth2中规范基本配置(认证入口,为谁认证,认证后办法什么令牌)
资源服务器核心业务分析及认证,授权规则设计及实现(匿名,认证,鉴权)
API网关工程设计及实现(所有外部请求访问内部资源的访问入口)
常见问题分析
Oauth2是什么?
是一种协议或规范,定义了完成认证和授权操作时所需要的一些对象以及这些对象应用方式。
Oauth2规范中定义哪些核心对象?
* 1)资源对象(数据库或文件中的数据)
* 2)资源服务器对象(有你要访问的资源)
* 3)认证管理器对象(负责用户身份的认证,完整认证后方可访问资源)
* 4)认证客户端对象(password,微信,....)
* 5)用户对象(需要认证的对象)
* OAuth2规范中如何对用户身份进行认证?
* 1)提供负责认证的地址?(用户去哪里认证,例如结婚去民政局)
* 2)告诉用户携带什么资料去认证?(携带的信息,例如身份证,户口本,...)
* 3)提供完成用户身份认证的对象?(AuthenticationManager)
* 4)认证成功后颁发什么令牌?(token)
springSecurity是什么?
是一个spring认证和授权框架,可以基于Oauth2协议进行认证和授权的落地实现。
JWT是什么?
是JSON WEB TOKEN的缩写,描述的是web应用中的一种令牌格式。