我希望用户能够根据自己的角色访问html页面。例如,只有具有HR角色的人才能查看设置。html页面,只有经理才能看到pendingrequest。html。
这是我的安全配置:
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
@Order(SecurityProperties.ACCESS_OVERRIDE_ORDER)
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private DatabaseAuthenticationProvider authenticationProvider;
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/js/**", "/css/**", "/img/**");
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.formLogin().loginPage("/login").failureUrl("/login").defaultSuccessUrl("/")
.and().logout().logoutSuccessUrl("/login")
.and().authorizeRequests().antMatchers("/login").permitAll()
.antMatchers("/settings.html").hasRole("HR")
.antMatchers("/pendingRequests.html").hasRole("MANAGER")
.antMatchers("/settings.html","/pendingRequests.html").hasRole("ADMIN")
.anyRequest().authenticated().and().csrf().disable();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.authenticationProvider(authenticationProvider).eraseCredentials(false);
}
}
由于某种原因,我在那里尝试的东西没有用,无论我扮演什么角色,我都看不到这些页面。
默认情况下,Spring security为安全检查中定义的所有角色添加前缀。
您可以将角色名称重命名为具有前缀,或从配置中删除该前缀(如何使用JavaConfig从Spring Security中删除角色前缀?)
我们尝试使用用户访问控制实现 RestAPI,其中相同的 URI 应为具有不同角色的两个用户返回不同的响应。比如说,对 URI 的响应(/resource/123) 如何根据角色隐藏每个属性。 隐藏用户不应访问的节点 问题:这会破坏响应结构。客户端可能会中断,因为预期的节点会被遗漏。 为该节点返回 null。 问题:这将破坏响应数据类型。因为“布尔”节点将具有空值。 返回该节点的默认值。 问题:这
我们是否可以基于位置限制用户界面的特定流(基于位置的访问控制)? 用户界面的一部分及其功能只能在用户处于特定地理位置时才可用?我们计划采用基于网络的白名单IP地址,但由于网络基础设施的不足和过多的开销。我们得出结论,基于网络的限制并不是一个有效的解决方案。 我们还研究了基于GPS的解决方案,在这种情况下,我们不能依赖浏览器应用程序来获得适当的位置。 如果你们中的任何一个曾经在类似的技术上工作过,请
问题内容: 我想为具有以下角色之一(ROLE1或ROLE2)的用户定义某些页面的访问权限 我正在尝试在我的spring security xml文件中进行如下配置: 我尝试了各种方法,例如: 等等 但似乎没有任何效果。 我一直在例外 要么 应该如何配置? 谢谢 问题答案: 问题是我配置了自定义 ,但没有通过其中一名选民。 通过添加到bean中来解决。
问题内容: 我正在尝试设置具有权限的基于角色的安全性。我正在尝试与Spring-Security一起执行此操作。 我不想设置ACL,因为这似乎对我的要求来说有些过头了。 我只想拥有本文所述的简单权限和角色。不幸的是,本文没有描述如何实现给定的解决方案。 有人已经尝试过了,可以指出正确的方向吗?也许还有另一个博客条目描述了实现方式? 非常感谢你。 问题答案: 要实现这一点,您似乎必须: 创建模型(用
读后http://en.wikipedia.org/wiki/Role-based_access_control看到人们建立授权/访问控制的方式,我想到了这个问题:“为什么我们在检查用户是否被允许执行X操作时检查用户的角色,而不是检查他们的权限?” 这就是我所理解的,用户有角色,角色有权限,这就是用户可以拥有权限的方式(用户不能明确地拥有分配给它的权限,它通过拥有角色获得权限) 我认为,在处理添加
是否有一些配置可以为特定角色的网站页面提供默认权限? 与我们在控制面板中的功能类似→ 门户设置→ 用户,这里我们可以指定创建用户时可以为用户分配哪些角色、站点或用户组。 详细说明: 我创建了一个新角色,比如,Role 我知道这是可能的,通过一个侦听器钩子,拥有一个并重写各种方法,但我正在寻找另一个更简单或更干净的解决方案。 谢谢