Commit 996c0e67587660bf65d9a6c955e31fa641a44768

Authored by 王通
1 parent 4364e2fb

1.

src/main/java/com/bsth/entity/sys/CompanyAuthority.java
1 1 package com.bsth.entity.sys;
2 2  
3 3 import javax.persistence.*;
  4 +import java.io.Serializable;
4 5  
5 6 /**
6 7 * Created by panzhao on 2016/11/22.
7 8 */
8 9 @Entity
9 10 @Table(name = "bsth_c_sys_company_auth")
10   -public class CompanyAuthority {
  11 +public class CompanyAuthority implements Serializable {
11 12  
12 13 @Id
13 14 @GeneratedValue(strategy = GenerationType.IDENTITY)
... ...
src/main/java/com/bsth/security/util/SecurityUtils.java
1   -package com.bsth.security.util;
2   -
3   -import com.bsth.entity.sys.Role;
4   -import com.bsth.entity.sys.SecurityUser;
5   -import com.bsth.entity.sys.SysUser;
6   -import org.slf4j.Logger;
7   -import org.slf4j.LoggerFactory;
8   -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
9   -import org.springframework.security.core.GrantedAuthority;
10   -import org.springframework.security.core.authority.SimpleGrantedAuthority;
11   -import org.springframework.security.core.context.SecurityContext;
12   -import org.springframework.security.core.context.SecurityContextHolder;
13   -
14   -import javax.servlet.http.HttpServletRequest;
15   -import java.util.ArrayList;
16   -import java.util.List;
17   -import java.util.Set;
18   -
19   -/**
20   - * @author PanZhao
21   - * @ClassName: SecurityUtils
22   - * @date 2016年3月30日 上午11:28:24
23   - */
24   -public class SecurityUtils {
25   -
26   - static Logger logger = LoggerFactory.getLogger(SecurityUtils.class);
27   -
28   - /**
29   - * @return SysUser 返回类型
30   - * @throws
31   - * @Title: getCurrentUser
32   - * @Description: TODO(获取当前用户)
33   - */
34   - public static SysUser getCurrentUser() {
35   - SysUser user = null;
36   - try {
37   - user = (SysUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
38   - } catch (Exception e) {
39   - logger.error("", e);
40   - }
41   - return user;
42   - }
43   -
44   - public static void login(SysUser user, HttpServletRequest request) {
45   - SecurityUser securityUser = new SecurityUser(user);
46   - SecurityContext sContext = SecurityContextHolder.getContext();
47   -
48   - List<GrantedAuthority> grantedAuths = new ArrayList<>();
49   - Set<Role> set = user.getRoles();
50   - for(Role r : set){
51   - grantedAuths.add(new SimpleGrantedAuthority(r.getCodeName()));
52   - }
53   -
54   - sContext.setAuthentication(new UsernamePasswordAuthenticationToken(securityUser, securityUser.getAuthorities(), grantedAuths));
55   - request.getSession(true).setAttribute("SPRING_SECURITY_CONTEXT", sContext);
56   - }
57   -}
  1 +package com.bsth.security.util;
  2 +
  3 +import com.bsth.entity.sys.Role;
  4 +import com.bsth.entity.sys.SecurityUser;
  5 +import com.bsth.entity.sys.SysUser;
  6 +import org.slf4j.Logger;
  7 +import org.slf4j.LoggerFactory;
  8 +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
  9 +import org.springframework.security.core.Authentication;
  10 +import org.springframework.security.core.GrantedAuthority;
  11 +import org.springframework.security.core.authority.SimpleGrantedAuthority;
  12 +import org.springframework.security.core.context.SecurityContext;
  13 +import org.springframework.security.core.context.SecurityContextHolder;
  14 +
  15 +import javax.servlet.http.HttpServletRequest;
  16 +import java.util.ArrayList;
  17 +import java.util.List;
  18 +import java.util.Set;
  19 +
  20 +/**
  21 + * @author PanZhao
  22 + * @ClassName: SecurityUtils
  23 + * @date 2016年3月30日 上午11:28:24
  24 + */
  25 +public class SecurityUtils {
  26 +
  27 + static Logger logger = LoggerFactory.getLogger(SecurityUtils.class);
  28 +
  29 + /**
  30 + * @return SysUser 返回类型
  31 + * @throws
  32 + * @Title: getCurrentUser
  33 + * @Description: TODO(获取当前用户)
  34 + */
  35 + public static SysUser getCurrentUser(HttpServletRequest request) {
  36 + SysUser user = null;
  37 + try {
  38 + user = (SysUser)(((SecurityContext)request.getSession().getAttribute("SPRING_SECURITY_CONTEXT")).getAuthentication().getPrincipal());
  39 + } catch (Exception e) {
  40 + logger.error("", e);
  41 + }
  42 + return user;
  43 + }
  44 +
  45 + public static void login(SysUser user, HttpServletRequest request) {
  46 + SecurityUser securityUser = new SecurityUser(user);
  47 + SecurityContext sContext = SecurityContextHolder.getContext();
  48 +
  49 + List<GrantedAuthority> grantedAuths = new ArrayList<>();
  50 + Set<Role> set = user.getRoles();
  51 + for(Role r : set){
  52 + grantedAuths.add(new SimpleGrantedAuthority(r.getCodeName()));
  53 + }
  54 +
  55 + sContext.setAuthentication(new UsernamePasswordAuthenticationToken(securityUser, securityUser.getAuthorities(), grantedAuths));
  56 + request.getSession(true).setAttribute("SPRING_SECURITY_CONTEXT", sContext);
  57 + }
  58 +}
... ...