类 NacosRoleServiceImpl
- java.lang.Object
-
- com.alibaba.nacos.plugin.auth.impl.roles.NacosRoleServiceImpl
-
@Service public class NacosRoleServiceImpl extends java.lang.ObjectNacos builtin role service.- 从以下版本开始:
- 1.2.0
- 作者:
- nkorange
-
-
字段概要
字段 修饰符和类型 字段 说明 private com.alibaba.nacos.auth.config.AuthConfigsauthConfigsprivate static intDEFAULT_PAGE_NOprivate java.util.Map<java.lang.String,java.util.List<PermissionInfo>>permissionInfoMapprivate PermissionPersistServicepermissionPersistServiceprivate java.util.Map<java.lang.String,java.util.List<RoleInfo>>roleInfoMapprivate RolePersistServicerolePersistServiceprivate java.util.Set<java.lang.String>roleSetprivate NacosUserDetailsServiceImpluserDetailsService
-
构造器概要
构造器 构造器 说明 NacosRoleServiceImpl()
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 voidaddPermission(java.lang.String role, java.lang.String resource, java.lang.String action)Add permission.voidaddRole(java.lang.String role, java.lang.String username)Add role.voiddeletePermission(java.lang.String role, java.lang.String resource, java.lang.String action)voiddeleteRole(java.lang.String role)voiddeleteRole(java.lang.String role, java.lang.String userName)com.alibaba.nacos.config.server.model.Page<PermissionInfo>findPermissionsLike4Page(java.lang.String role, int pageNo, int pageSize)com.alibaba.nacos.config.server.model.Page<RoleInfo>findRolesLike4Page(java.lang.String username, java.lang.String role, int pageNo, int pageSize)java.util.List<java.lang.String>findRolesLikeRoleName(java.lang.String role)java.util.List<PermissionInfo>getPermissions(java.lang.String role)com.alibaba.nacos.config.server.model.Page<PermissionInfo>getPermissionsByRoleFromDatabase(java.lang.String role, int pageNo, int pageSize)com.alibaba.nacos.config.server.model.Page<PermissionInfo>getPermissionsFromDatabase(java.lang.String role, int pageNo, int pageSize)java.util.List<RoleInfo>getRoles(java.lang.String username)com.alibaba.nacos.config.server.model.Page<RoleInfo>getRolesFromDatabase(java.lang.String userName, java.lang.String role, int pageNo, int pageSize)booleanhasPermission(java.lang.String username, com.alibaba.nacos.plugin.auth.api.Permission permission)Determine if the user has permission of the resource.private java.lang.StringjoinResource(com.alibaba.nacos.plugin.auth.api.Resource resource)private voidreload()
-
-
-
字段详细资料
-
DEFAULT_PAGE_NO
private static final int DEFAULT_PAGE_NO
- 另请参阅:
- 常量字段值
-
authConfigs
@Autowired private com.alibaba.nacos.auth.config.AuthConfigs authConfigs
-
rolePersistService
@Autowired private RolePersistService rolePersistService
-
userDetailsService
@Autowired private NacosUserDetailsServiceImpl userDetailsService
-
permissionPersistService
@Autowired private PermissionPersistService permissionPersistService
-
roleSet
private volatile java.util.Set<java.lang.String> roleSet
-
roleInfoMap
private volatile java.util.Map<java.lang.String,java.util.List<RoleInfo>> roleInfoMap
-
permissionInfoMap
private volatile java.util.Map<java.lang.String,java.util.List<PermissionInfo>> permissionInfoMap
-
-
方法详细资料
-
reload
@Scheduled(initialDelay=5000L, fixedDelay=15000L) private void reload()
-
hasPermission
public boolean hasPermission(java.lang.String username, com.alibaba.nacos.plugin.auth.api.Permission permission)Determine if the user has permission of the resource.Note if the user has many roles, this method returns true if any one role of the user has the desired permission.
- 参数:
username- user infopermission- permission to auth- 返回:
- true if granted, false otherwise
-
getRoles
public java.util.List<RoleInfo> getRoles(java.lang.String username)
-
getRolesFromDatabase
public com.alibaba.nacos.config.server.model.Page<RoleInfo> getRolesFromDatabase(java.lang.String userName, java.lang.String role, int pageNo, int pageSize)
-
getPermissions
public java.util.List<PermissionInfo> getPermissions(java.lang.String role)
-
getPermissionsByRoleFromDatabase
public com.alibaba.nacos.config.server.model.Page<PermissionInfo> getPermissionsByRoleFromDatabase(java.lang.String role, int pageNo, int pageSize)
-
addRole
public void addRole(java.lang.String role, java.lang.String username)Add role.- 参数:
role- role nameusername- user name
-
deleteRole
public void deleteRole(java.lang.String role, java.lang.String userName)
-
deleteRole
public void deleteRole(java.lang.String role)
-
getPermissionsFromDatabase
public com.alibaba.nacos.config.server.model.Page<PermissionInfo> getPermissionsFromDatabase(java.lang.String role, int pageNo, int pageSize)
-
addPermission
public void addPermission(java.lang.String role, java.lang.String resource, java.lang.String action)Add permission.- 参数:
role- role nameresource- resourceaction- action
-
deletePermission
public void deletePermission(java.lang.String role, java.lang.String resource, java.lang.String action)
-
findRolesLikeRoleName
public java.util.List<java.lang.String> findRolesLikeRoleName(java.lang.String role)
-
joinResource
private java.lang.String joinResource(com.alibaba.nacos.plugin.auth.api.Resource resource)
-
findRolesLike4Page
public com.alibaba.nacos.config.server.model.Page<RoleInfo> findRolesLike4Page(java.lang.String username, java.lang.String role, int pageNo, int pageSize)
-
findPermissionsLike4Page
public com.alibaba.nacos.config.server.model.Page<PermissionInfo> findPermissionsLike4Page(java.lang.String role, int pageNo, int pageSize)
-
-