diff --git a/others/db_table_description_3.0.0.html b/others/db_table_description_3.0.0.html index b730909..d9cc48d 100644 --- a/others/db_table_description_3.0.0.html +++ b/others/db_table_description_3.0.0.html @@ -12,7 +12,7 @@

以下对spring-oauth-server项目中的 + href="https://gitee.com/shengzhao/spring-oauth-server">spring-oauth-server项目中的 oauth.ddl initial_db.ddl文件(位于/others/database目录)中的表字及段进行说明, 内容包括字段说明与使用场景等

@@ -139,7 +139,8 @@ @@ -347,8 +349,10 @@ - + + + + + + + + + + + + - - + + - - + + + - - + + + - - + + + - + + + - - - - + + + - - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
varchar 指定客户端申请的权限范围,可选值在OIDC协议中定义, - 包括openid,profile,email,address,phone;若有多个值用逗号(,)分隔,如: "openid,email". + 包括openid,profile,email,address,phone;若有多个值用逗号(,)分隔,如: + "openid,email".
openid是必须有的,其他值若有则在获取的id_token中会包含对应的值.
@@ -165,7 +166,8 @@

- 在项目中,主要操作oauth2_registered_client表的类是ClientDetailsController.java, + + 在项目中,主要操作oauth2_registered_client表的类是ClientDetailsController.java, OauthClientDetails.java更多的细节请参考该类; 也可以根据实际的需要,去扩展或修改该类的实现.

- 该表用于存储在OAuth2.1授权过程中各类信息数据, 支持各类grant_type场景; - 对oauth2_authorization表的主要操作在JdbcOAuth2AuthorizationService.java类中, 更多的细节请参考该类. + 该表用于存储在OAuth2.1授权过程中各类信息数据, + 支持各类grant_type场景; + 对oauth2_authorization表的主要操作在JdbcOAuth2AuthorizationService.java类中, + 更多的细节请参考该类.
注意: 若对性能有要求, 此表的数据存储设计需要进行优化(如存redis或利用JWT特性简化一些不必要的存储字段).

@@ -385,74 +389,115 @@

user_idint主键, 自增长, 数据库自动生成
guidvarchar唯一, 业务id
oauth_refresh_token create_time数据的创建时间,精确到秒,由数据库在插入数据时取当前系统时间自动生成(扩展字段)datetime数据创建时间
token_id - 该字段的值是将refresh_token的值通过MD5加密后存储的. - updated_timetimestamp数据的最后修改时间, 由数据库自动维护更新
token - 存储将OAuth2RefreshToken.java对象序列化后的二进制数据. - usernamevarchar用户名, 非空, 唯一
authentication - 存储将OAuth2Authentication.java对象序列化后的二进制数据. - passwordvarchar密码, 加密存储, 非空
-

- 在项目中,主要操作oauth_refresh_token表的对象是JdbcTokenStore.java. - (与操作oauth_access_token表的对象一样);更多的细节请参考该类. -
- 如果客户端的grant_type不支持refresh_token,则不会使用该表. -

-
enabledtinyint是否启用, 默认1(即启用)
oauth_codecreate_time数据的创建时间,精确到秒,由数据库在插入数据时取当前系统时间自动生成(扩展字段)phonevarchar手机号
code - 存储服务端系统生成的code的值(未加密). - emailvarchar邮箱地址
authentication - 存储将AuthorizationRequestHolder.java对象序列化后的二进制数据. + addressvarchar个人地址
nicknamevarchar用户昵称, 别名
updated_atint最后数据更新时间值
default_usertinyint是否默认用户, 默认0(不是); 只用在初始化数据时使用
last_login_timedatetime最后登录时间
+

+ 在项目中,主要使用user_表的对象是UserServiceImpl.java; + 对应的实体是User.java; + 在Spring Security中, 此表存储的数据对应UserDetails.java类. +

user_privilegeuser_idint外键, 关联user_的id字段
privilegevarchar权限值, 如: ROLE_USER
+

- 在项目中,主要操作oauth_code表的对象是JdbcAuthorizationCodeServices.java. - 更多的细节请参考该类. -
- 只有当grant_type为"authorization_code"时,该表中才会有数据产生; 其他的grant_type没有使用该表. + 此表存储用户的权限值, 一个用户可以有多个权限值.

-

- © 2013 - 2023 spring-oauth-server -

+
+
+

+ © 2013 - 2023 spring-oauth-server +

+