This commit is contained in:
nkorange 2020-02-06 16:33:23 +08:00
parent 983204c0c1
commit da4192c4a5
5 changed files with 17 additions and 14 deletions

View File

@ -101,11 +101,13 @@ public class UserController {
@Secured(resource = NacosAuthConfig.CONSOLE_RESOURCE_NAME_PREFIX + "users", action = ActionTypes.WRITE) @Secured(resource = NacosAuthConfig.CONSOLE_RESOURCE_NAME_PREFIX + "users", action = ActionTypes.WRITE)
public Object deleteUser(@RequestParam String username) { public Object deleteUser(@RequestParam String username) {
List<RoleInfo> roleInfoList = roleService.getRoles(username); List<RoleInfo> roleInfoList = roleService.getRoles(username);
if (roleInfoList != null) {
for (RoleInfo roleInfo : roleInfoList) { for (RoleInfo roleInfo : roleInfoList) {
if (roleInfo.getRole().equals(NacosRoleServiceImpl.GLOBAL_ADMIN_ROLE)) { if (roleInfo.getRole().equals(NacosRoleServiceImpl.GLOBAL_ADMIN_ROLE)) {
throw new IllegalArgumentException("cannot delete admin: " + username); throw new IllegalArgumentException("cannot delete admin: " + username);
} }
} }
}
userDetailsService.deleteUser(username); userDetailsService.deleteUser(username);
return new RestResult<>(200, "delete user ok!"); return new RestResult<>(200, "delete user ok!");
} }

View File

@ -81,12 +81,15 @@ public class NacosAuthManager implements AuthManager {
user.setUserName(username); user.setUserName(username);
user.setToken(token); user.setToken(token);
List<RoleInfo> roleInfoList = roleService.getRoles(username); List<RoleInfo> roleInfoList = roleService.getRoles(username);
if (roleInfoList != null) {
for (RoleInfo roleInfo : roleInfoList) { for (RoleInfo roleInfo : roleInfoList) {
if (roleInfo.getRole().equals(NacosRoleServiceImpl.GLOBAL_ADMIN_ROLE)) { if (roleInfo.getRole().equals(NacosRoleServiceImpl.GLOBAL_ADMIN_ROLE)) {
user.setGlobalAdmin(true); user.setGlobalAdmin(true);
break; break;
} }
} }
}
return user; return user;
} }

View File

@ -192,12 +192,11 @@ CREATE TABLE `roles` (
CREATE TABLE `permissions` ( CREATE TABLE `permissions` (
`role` varchar(50) NOT NULL, `role` varchar(50) NOT NULL,
`permission` varchar(512) NOT NULL, `resource` varchar(512) NOT NULL,
`gmt_create` bigint NULL, `action` varchar(8) NOT NULL,
`gmt_modified` bigint NULL, UNIQUE INDEX `uk_role_permission` (`role`,`resource`,`action`) USING BTREE
UNIQUE INDEX `idx_role_resource` (`role` ASC, `permission` ASC) USING BTREE
); );
INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE); INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);
INSERT INTO roles (username, role) VALUES ('nacos', 'GLOBAL_ADMIN'); INSERT INTO roles (username, role) VALUES ('nacos', 'ROLE_ADMIN');

View File

@ -193,4 +193,4 @@ CREATE TABLE permissions (
INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE); INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);
INSERT INTO roles (username, role) VALUES ('nacos', 'GLOBAL_ADMIN'); INSERT INTO roles (username, role) VALUES ('nacos', 'ROLE_ADMIN');

View File

@ -31,7 +31,6 @@
<maven>3.2.5</maven> <maven>3.2.5</maven>
</prerequisites> </prerequisites>
<scm> <scm>
<url>git@github.com:alibaba/nacos.git</url> <url>git@github.com:alibaba/nacos.git</url>
<connection>scm:git@github.com:alibaba/nacos.git</connection> <connection>scm:git@github.com:alibaba/nacos.git</connection>