contact-center

所属分类:微服务
开发工具:kotlin
文件大小:5828KB
下载次数:0
上传日期:2022-07-01 05:44:54
上 传 者sh-1993
说明:  一个基于 Spring Cloud 的微服务客服系统
(A micro service customer service system based on Spring Cloud)

文件列表:
CHANGELOG.md (249, 2022-07-01)
GraphQLBFF (0, 2022-07-01)
GraphQLBFF\build.gradle.kts (926, 2022-07-01)
GraphQLBFF\gradle (0, 2022-07-01)
GraphQLBFF\gradle\wrapper (0, 2022-07-01)
GraphQLBFF\gradle\wrapper\gradle-wrapper.jar (59203, 2022-07-01)
GraphQLBFF\gradle\wrapper\gradle-wrapper.properties (202, 2022-07-01)
GraphQLBFF\gradlew (5441, 2022-07-01)
GraphQLBFF\gradlew.bat (2674, 2022-07-01)
GraphQLBFF\settings.gradle.kts (32, 2022-07-01)
GraphQLBFF\src (0, 2022-07-01)
GraphQLBFF\src\main (0, 2022-07-01)
GraphQLBFF\src\main\kotlin (0, 2022-07-01)
GraphQLBFF\src\main\kotlin\com (0, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu (0, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff (0, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\GraphQlbffApplication.kt (1750, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\config (0, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\config\JacksonConfiguration.kt (958, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\config\SecurityConfiguration.kt (1191, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\config\WebClientConfig.kt (3061, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\config\WebConfiguration.kt (298, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\context (0, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\context\MyGraphQLContext.kt (1454, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\context\MyGraphQLContextFactory.kt (2120, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\dataloaders (0, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\dataloaders\CompanyDataLoader.kt (1246, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\dataloaders\CompanyService.kt (996, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\directives (0, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\directives\CustomDirectiveWiringFactory.kt (1803, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\directives\LowercaseDirective.kt (843, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\directives\LowercaseSchemaDirectiveWiring.kt (1564, 2022-07-01)
GraphQLBFF\src\main\kotlin\com\qinghzu\graphqlbff\directives\SpecificValueOnly.kt (864, 2022-07-01)
... ...

# 客服系统 权限设计 依托于 Spring OAuth2 进行权限设计,使用 Spring Security GlobalMethodSecurity 根据设计好的角色在开发时就可以进行API权限设计. 同时使用 JWT 作为认证 Token,降低了服务端进行鉴权时的资源消耗. OAuth2 + JWT 支持跨域传输,因此也可用于整个系统的单点验证,后期也便于和现有系统的 ERP模块打通. GlobalMethodSecurity 的缺点是需要开发时期就要确定权限 ~~另外一个风险为:当前 Spring Cloud OAuth2 没有与 Spring Cloud Gateway 进行集成,网关无法鉴权.~~ #### 权限模块具体实现 每个业务服务可以定义自己所属的资源模块,通过开启 @EnableResourceServer 并继承实现 ResourceServerConfigurerAdapter 来实现 业务服务通过指定自己的 resourceId 来判断 AuthorizationServer 赋予的权限(resourceIds)是否包含本服务 resource 鉴权后,进入业务API,业务API 通过 @PreAuthorize 注解判断用户角色 resource 可以通过数据库修改,API 权限编码时确定 #### 备注 * 不再使用网关鉴权,改为服务自己进行鉴权 * 考虑了现有的网关鉴权方案,没有能满足本地校验的

近期下载者

相关文件


收藏者