提交 be9dc98f 编写于 作者: sq3536's avatar sq3536

daily

上级 3e497ce6
......@@ -120,6 +120,7 @@ public class webSecurityConfig extends WebSecurityConfigurerAdapter {
.antMatchers("/syspssystems/**/permissiondata").permitAll()
.antMatchers("/uaa/login").permitAll()
.antMatchers("/uaa/register").permitAll()
.antMatchers("/sysauthlogs").permitAll()
// 所有请求都需要认证
.anyRequest().authenticated()
// 防止iframe 造成跨域
......
......@@ -125,6 +125,7 @@ public class DevBootSecurityConfig extends WebSecurityConfigurerAdapter {
.antMatchers("/uaa/publickey").permitAll()
.antMatchers("/uaa/dingtalk/jsapi/sign").permitAll()
.antMatchers("/uaa/refreshToken").permitAll()
.antMatchers("/sysauthlogs").permitAll()
.anyRequest().authenticated()
// 防止iframe 造成跨域
.and().headers().frameOptions().disable();
......
......@@ -126,27 +126,32 @@ public class UAACoreService {
Set<String> roleIds = getRoleByUserId(userId);
if(roleIds.size()>0){
roleIds.forEach(roleid->authorities.add(new SimpleGrantedAuthority("ROLE_"+roleid)));
SysRolePermissionSearchContext context = new SysRolePermissionSearchContext();
context.getSelectCond().in("sys_roleid",roleIds).eq("permissionenable",1).orderByAsc("permissiontype","sys_permissionid");
context.setSize(Integer.MAX_VALUE);
String ids="";
for(String id:roleIds){
if(!StringUtils.isEmpty(ids))ids+=",";
ids+=("'"+id+"'");
}
String sql= " SELECT distinct t21.PERMISSIONTYPE, t1.SYS_PERMISSIONID FROM IBZROLE_PERMISSION t1 INNER JOIN IBZPERMISSION t21 ON t1.SYS_PERMISSIONID = t21.SYS_PERMISSIONID and T21.ENABLE=1 where sys_roleid in ("+ids+")" ;
Set<String> apps=new HashSet<>();
rolePermissionService.searchDefault(context).forEach(sysRolePermission -> {
if(PermissionType.APPMENU.toString().equals(sysRolePermission.getPermissiontype()))
rolePermissionService.select(sql,null).forEach(item->{
String permissiontype=item.getString("PERMISSIONTYPE");
String permissionid=item.getString("SYS_PERMISSIONID");
if(StringUtils.isEmpty(permissionid)||StringUtils.isEmpty(permissiontype))return;
if(PermissionType.APPMENU.toString().equals(permissiontype))
{
//补充应用访问权
String appid = sysRolePermission.getPermissionid().split("-")[0].toLowerCase()+"-"+sysRolePermission.getPermissionid().split("-")[1].toLowerCase();
String appid = permissionid.split("-")[0].toLowerCase()+"-"+permissionid.split("-")[1].toLowerCase();
if(!apps.contains(appid)){
apps.add(appid);
authorities.add(new SimpleGrantedAuthority(sysRolePermission.getPermissiontype()+"_"+appid));
authorities.add(new SimpleGrantedAuthority(permissiontype+"_"+appid));
}
}
if(PermissionType.OPPRIV.toString().equals(sysRolePermission.getPermissiontype()))
authorities.add(new SimpleGrantedAuthority(sysRolePermission.getPermissionid()));
if(PermissionType.OPPRIV.toString().equals(permissiontype))
authorities.add(new SimpleGrantedAuthority(permissionid));
else
authorities.add(new SimpleGrantedAuthority(sysRolePermission.getPermissiontype()+"_"+sysRolePermission.getPermissionid()));
authorities.add(new SimpleGrantedAuthority(permissiontype+"_"+permissionid));
});
}
return authorities;
......
......@@ -146,7 +146,8 @@ public class apiSecurityConfig extends WebSecurityConfigurerAdapter {
.antMatchers("/uaa/queryQQUserByCode").permitAll()
.antMatchers("/uaa/bindQQtoRegister").permitAll()
.antMatchers("/uaa/dingtalk/jsapi/sign").permitAll()
.antMatchers("/uaa/refreshToken").permitAll();
.antMatchers("/uaa/refreshToken").permitAll()
.antMatchers("/sysauthlogs").permitAll();
if (StringUtils.isNotBlank(excludesPattern)) {
for (String excludePattern : excludesPattern.split("\\s*,\\s*")) {
......
......@@ -60,14 +60,14 @@ public class LayeringCache extends AbstractValueAdaptingCache {
public ValueWrapper get(Object key) {
ValueWrapper wrapper = caffeineCache.get(key);
Object value= ObjectUtils.isEmpty(wrapper)?null:wrapper.get();
log.debug("查询一级缓存 key:{} ,value:{}", key,value);
log.debug("查询一级缓存 key:{}", key);
if (ObjectUtils.isEmpty(value)) {
wrapper = redisCache.get(key);
value=ObjectUtils.isEmpty(wrapper)?null:wrapper.get();
log.debug("查询二级缓存 key:{} ,value:{}", key,value);
log.debug("查询二级缓存 key:{}", key);
if(!ObjectUtils.isEmpty(value)){
caffeineCache.put(key, value);
log.debug("查询二级缓存,并将数据放到一级缓存。 key:{} ,value:{}", key,value);
log.debug("查询二级缓存,并将数据放到一级缓存。 key:{}", key);
}
}
return wrapper;
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册