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

做的比较好的p2p网站如何在wordpress中加备案编号

做的比较好的p2p网站,如何在wordpress中加备案编号,网站平台开发报价单,流媒体网站开发spring boot(学习笔记第十四课) Spring Security的密码加密#xff0c;基于数据库认证 学习内容#xff1a; Spring Security的密码加密基于数据库认证 1. Spring Security的密码加密 如果用户的密码保存在数据库中是以明文保存#xff0c;对于公司的安全将是灾难性的基于数据库认证 学习内容 Spring Security的密码加密基于数据库认证 1. Spring Security的密码加密 如果用户的密码保存在数据库中是以明文保存对于公司的安全将是灾难性的哪个公司也不会允许用户数据使用明文保存。这里练习使用加密之后的密码进行认证。 注意这样公司的数据库里面是没有用户的明文密码即使数据库泄露也不会暴漏用户的明文密码实现密码加密 配置passwordEncoderBean PasswordEncoder passwordEncoder() {return new BCryptPasswordEncoder(10); }手动根据明文密码生成密文密码 bcrypt转换工具 注意每次生成的密码都不一样但是每个生成的都好用 使用生成的密文进行用户的创建。 BeanUserDetailsService userDetailsService() {InMemoryUserDetailsManager users new InMemoryUserDetailsManager();users.createUser(User.withUsername(finlay_user).password($2a$10$uwwZ5EyWbFnnw3JG53rqQ.VJUm/.Pl9Ko1CUP5Aqc2kuBr2Bx7bc.).roles(USER).build());再次进行认证。 2. 基于数据库认证 以上练习了基于内存的认证实际上正式的系统开发都是使用数据库进行认证在这里练习使用使用数据库的用户数据进行认证。这里使用postgresql。 首先创建数据库需要的表 创建USER表CREATE TABLE USER( id int, username varchar(32), password varchar(255), enabled int, locked int, PRIMARY KEY(id) );创建ROLE表CREATE TABLE ROLE( id int, name varchar(32), nameZh varchar(255), PRIMARY KEY(id) );创建USER_ROLE表(user和role的关系表)CREATE TABLE USER_ROLE( id int, uid int, rid int, PRIMARY KEY(id) );用户数据如下 USER表 ROLE表 USER_ROLE表 USER和ROLE的关系 with uur as ( select* fromUSER u inner join USER_ROLE ur on u.id ur.uid)select username,namezh,name as rolename from uur inner join ROLE r on uur.rid r.id引入必要的依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-security/artifactId/dependencydependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion3.0.3/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdscopeprovided/scope/dependencydependencygroupIdorg.postgresql/groupIdartifactIdpostgresql/artifactIdscoperuntime/scope/dependencydependencygroupIdcom.alibaba/groupIdartifactIddruid/artifactIdversion1.2.9/version/dependency这里repository使用mybatis所以引入mybatis的依赖包。在application.properties定义数据库连接信息。spring.datasource.typecom.alibaba.druid.pool.DruidDataSource spring.datasource.urljdbc:postgresql://127.0.0.1:5432/springboot spring.datasource.usernamefinlay spring.datasource.password123456定义mybatis的interface以及xml文件 定义User和Role的实体类Data public class Role {private Integer id;private String name;private String nameZh; }Data public class User implements UserDetails {private Integer id;private String username;private String password;private Boolean enabled;private Boolean locked;private ListRole roles;Overridepublic Collection? extends GrantedAuthority getAuthorities() {ListSimpleGrantedAuthority authorities new ArrayList();for (Role role : roles) {authorities.add(new SimpleGrantedAuthority(role.getName()));}return authorities;}Overridepublic String getPassword() {return this.password;}Overridepublic String getUsername() {return this.username;}Overridepublic boolean isAccountNonExpired() {return true;}Overridepublic boolean isAccountNonLocked() {return !this.locked;}Overridepublic boolean isCredentialsNonExpired(){return true;}Overridepublic boolean isEnabled(){return this.enabled;} }配置mybatisMapper public interface UserMapper {User loadUserByUserName(String usernam);ListRole getUserRolesByUid(Integer id); }配置mybatis的xml配置文件!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespacecom.example.demo.repository.mybatis.UserMapperselect idloadUserByUserName resultTypecom.example.demo.authentication.Userselect * from USER where username#{username}/selectselect idgetUserRolesByUid resultTypecom.example.demo.authentication.Roleselect * from ROLE r, USER_ROLE ur where r.idur.rid and ur.uid#{id}/select /mapper定义UserDetailsServiceService public class UserService implements UserDetailsService {Autowiredpublic UserMapper userMapper;Overridepublic UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {User user userMapper.loadUserByUserName(username);if (user null) {throw new UsernameNotFoundException(username is not found);}user.setRoles(userMapper.getUserRolesByUid(user.getId()));return user;} }注意这里生成了UserDetailsService的bean所以spring boot security的的认证处理都会使用这个bean整体的架构 测试认证结果
http://www.ho-use.cn/article/10823594.html

相关文章:

  • 网站建设目的与作用切片工具做网站怎么做
  • 建设网站平台的章程wordpress 机制
  • 手机可以访问的网站怎么做wordpress drupal 插件
  • 晋州建设规划局网站中小网站建设都有哪些方案
  • 上海建设工程安全监理网站重庆网站制作定制
  • 微信小程序开发和网站开发的区别兰州装饰公司十强
  • discuz论坛建站教程资金盘网站开发价格
  • 网站放到服务器襄樊seo
  • 洛阳制作网站的公司吗公司网站建设一定要求原图吗
  • 第二次全国地名普查网站建设宿州网站建设贰聚思诚信
  • 企业网站建设基本思路私人衣橱网站建设
  • 餐饮vi设计网站上海网站建设 迈若
  • 新建网站霞山手机网站建设公司
  • 廊坊网站排名优化公司织梦末班和dw建设网站哪个方便优化
  • h5 技术做健康类网站为企业做一个网站多少钱
  • 建设厅官方网站河南国内外c2c网站有哪些
  • 做泥软件下载官方网站户型单页设计
  • 网站建设找谁好php 怎么做 网站 图片
  • 临沂做网站费用创意营销策划方案
  • 建设京东类的网站需要什么流程图网站建设用款
  • 怎么做电商网站推广网站建设结构图下载
  • 网站后台页面设计ideas wordpress theme 2.0
  • 自己可以自己做公司的网站吗在线做初中题网站
  • 微信公众网站怎么做的深圳注册贸易公司网上注册流程
  • 网站域名设计方案山东三强建设咨询有限公司网站
  • 网站开发逻辑多用户商城系统在哪里找
  • 建设路小学查分网站网页平面设计作品
  • 企业网站推广的收获与启示推广渠道方式
  • php网站开发前言c2c模式分类
  • wordpress站内信公众号微网站建设