在Java中,可以使用以下幾種方式實現管理員權限:
String userRole = "admin";
if (userRole.equals("admin")) {
// 執行管理員權限操作
} else {
// 沒有管理員權限
}
enum UserRole {
ADMIN,
USER
}
UserRole userRole = UserRole.ADMIN;
if (userRole == UserRole.ADMIN) {
// 執行管理員權限操作
} else {
// 沒有管理員權限
}
class UserRole {
private String role;
public UserRole(String role) {
this.role = role;
}
public boolean isAdmin() {
return role.equals("admin");
}
}
UserRole userRole = new UserRole("admin");
if (userRole.isAdmin()) {
// 執行管理員權限操作
} else {
// 沒有管理員權限
}
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/admin/**").hasRole("ADMIN")
.antMatchers("/user/**").hasRole("USER")
.and()
.formLogin()
.and()
.logout();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication()
.withUser("admin").password("{noop}admin").roles("ADMIN")
.and()
.withUser("user").password("{noop}user").roles("USER");
}
}
以上是幾種常見的實現管理員權限的方式,具體選擇哪種方式取決于項目的需求和復雜度。