22 lines
632 B
Java
22 lines
632 B
Java
package ru.soune.nocopy.adminpanel.permission;
|
|
|
|
import lombok.RequiredArgsConstructor;
|
|
import org.springframework.stereotype.Component;
|
|
import ru.soune.nocopy.adminpanel.entity.AdminUser;
|
|
|
|
@Component
|
|
@RequiredArgsConstructor
|
|
public class PermissionChecker {
|
|
|
|
public boolean isSuperAdmin(AdminUser admin) {
|
|
if (admin == null || !admin.getIsActive()) return false;
|
|
return AdminPermission.isSuperAdmin(admin.getPermissions());
|
|
}
|
|
|
|
public void checkSuperAdmin(AdminUser admin) {
|
|
if (!isSuperAdmin(admin)) {
|
|
throw new SecurityException("Super admin permission required");
|
|
}
|
|
}
|
|
}
|