当前位置: 首页 > news >正文

惠州淡水网站建设怎么推广网址

惠州淡水网站建设,怎么推广网址,百度seo优化网站怎么做,网址大全是什么浏览器Spring Cloud Gateway + JWT 单点登录实现方案 一、方案概述 本方案基于Spring Cloud微服务架构,通过网关统一认证和JWT令牌实现分布式系统的单点登录,移除了独立的认证服务器,简化架构同时保持安全性。核心技术组件包括: Spring Cloud Gateway:统一请求入口,负责认证、…Spring Cloud Gateway + JWT 单点登录实现方案 一、方案概述 本方案基于Spring Cloud微服务架构,通过网关统一认证和JWT令牌实现分布式系统的单点登录,移除了独立的认证服务器,简化架构同时保持安全性。核心技术组件包括: Spring Cloud Gateway:统一请求入口,负责认证、授权和路由转发JWT(Json Web Token):作为无状态令牌载体,包含用户身份和权限信息Spring Security:提供认证和授权功能,集成在网关层MyBatis-Plus二、系统架构与服务组件 1. 服务架构图 +----------------+ +----------------+ +----------------+ | | | | | | | 客户端应用 |---| API网关 |---| 用户资源服务 | | (前端项目) | | (认证+路由) | | (user-service) | | | | | | | +----------------+ +--------+-------+ +--------+-------+|v +----------------+ +----------------+ | | | | | 订单资源服务 | | 产品资源服务 | |(order-service) | |(product-service)| | | | | +----------------+ +----------------+2. 服务职责说明 服务名称职责描述API网关统一请求入口,处理用户登录、Token生成、验证和路由分发资源服务提供业务数据接口,依赖网关传递的Token进行权限控制客户端应用用户交互入口,通过API调用网关服务,处理登录状态和Token存储三、核心技术实现 1. 网关服务配置文件(application.yml) server:port: 8080spring:application:name: api-gatewaydatasource:url: jdbc:mysql://localhost:3306/sso_db?useSSL=falseserverTimezone=Asia/Shanghaiusername: rootpassword: passworddriver-class-name: com.mysql.cj.jdbc.Driversecurity:jwt:secret: sso-jwt-secret-keyexpiration: 3600cloud:gateway:routes:- id: user-serviceuri: lb://user-servicepredicates: Path=/api/users/**filters: TokenRelay- id: order-serviceuri: lb://order-servicepredicates: Path=/api/orders/**filters: TokenRelay- id: public-apiuri: lb://gatewaypredicates: Path=/api/public/**mybatis-plus:mapper-locations: classpath*:/mapper/**/*.xmltype-aliases-package: com.example.gateway.modelconfiguration:map-underscore-to-camel-case: truelog-impl: org.apache.ibatis.logging.stdout.StdOutImplglobal-config:db-config:id-type: auto2. 数据实体类(User.java) @Data @TableName("sys_user") public class User {@TableId(type = IdType.AUTO)private Long id;private String username;private String password;private String realName;private String phone;private Date createTime;// 权限列表(实际项目中建议单独建表)private String permissions; }3. 数据访问层(UserMapper.java) @Mapper public interface UserMapper extends BaseMapperUser {User selectByUsername(String username); }4. 服务层实现(UserDetailsServiceImpl.java) @Service public class UserDetailsServiceImpl implements UserDetailsService {@Autowiredprivate UserMapper userMapper;@Overridepublic UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {User user = userMapper.selectByUsername(username);if (user == null) {throw new UsernameNotFoundException("用户不存在");}return new org.springframework.security.core.userdetails.User(user.getUsername(),user.getPassword(),Collections.emptyList());} }5. 网关安全配置(SecurityConfig.java) @Configuration @EnableWebSecurity public class SecurityConfig {@Autowiredprivate JwtAuthenticationEntryPoint unauthorizedHandler;@Autowiredprivate JwtRequestFilter jwtRequestFilter;@Autowiredprivate UserDetailsService userDetailsService;@Beanpublic PasswordEncoder passwordEncoder() {return new BCryptPasswordEncoder();}@Beanpublic AuthenticationManager authenticationManager(AuthenticationConfiguration authConfig) throws Exception {return authConfig.getAuthenticationManager();}@Beanpublic SecurityFilterChain filterChain(HttpSecurity http) throws Exception {http.cors().and().csrf().disable().exceptionHandling().authenticationEntryPoint(unauthorizedHandler).and().sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and().authorizeRequests().antMatchers("/api/auth/**", "/api/public/**").permitAll().anyRequest().authenticated();http.addFilterBefore(jwtRequestFilter, UsernamePasswordAuthenticationFilter.class);return http.build();} }6. JWT工具类(JwtUtils.java) @Component public class JwtUtils {@Value("${spring.security.jwt.secret}")private String secret;@Value("${spring.security.jwt.expiration}")private Long expiration;public String extractUsername(String token) {return extractClaim(token, Claims::getSubject);}public Date extractExpiration(String token) {
http://www.dnsts.com.cn/news/129725.html

相关文章:

  • 开发高端网站开发网页素材制作
  • 网页广告太多怎么办郑州百度seo网站优化
  • 一些建筑设计网站精准营销论文
  • 创建自己的博客网站构建中小企业网络
  • 中小型网站建设有自己团队做网站上线多久
  • 深圳做网站那家公司好wordpress 远程 mysql
  • 网站的收录河南新闻频道
  • 网站开发的初级技术员东莞网站建设星河
  • 物流公司网站方案沈阳好的互联网设计
  • php网站开发心得3500字在实际页面设计中文本通常使用
  • 律师网站素材福州房地产网站建设
  • 做网站开发怎么接单第一ppt网ppt模板下载
  • 电商办公室谷歌网站优化推广
  • 电商网站开发目的设计好的建设专业网站
  • 网店网站技术方案成都广告公司最新招聘信息
  • 网站建设中的网页布局主要内容建设一个网站流程图
  • 电子商务网站开发技术解决方案电子商务网站中最基本的系统是
  • 网站企业文化建设企业网站模板下载562
  • 如何自己做电影网站网络营销推广活动有哪些
  • iis网站物理路径文创产品设计方案模板
  • 男女直接做的视频网站免费观看wordpress灯箱图片翻页
  • 贵德网站建设浙江省建设工程造价协会网站
  • 网站空间的控制面板首页wordpress ip_hash失效
  • 网站建设需要资质么美工素材网站有哪些
  • php网站开发实例教程 源码西安做视频网站公司
  • 做全屏式网站尺寸是多大中企动力简介
  • 网站建设实训课实训心得响应式网站模板免费下载
  • 十三五关于网站建设2019销售网站开发与设计现状
  • 济南网站建设设计wordpress插件 标签页
  • 做网站业务员提成几个点陕西省建设网页企业信息