WebSecurityConfigurerAdapter中的configuer

9 篇文章 0 订阅
4 篇文章 1 订阅

configuer方法讲解

// WebSecurityConfigurerAdapter默认设定访问权限和登录方式
protected void configure(HttpSecurity http) throws Exception { 
	logger.debug (”Using default configure(HttpSecurity). 
	+ "If subclassed thwill potentially"
	+"overrdesubclass configure (HttpSecuri ty) "); 
	//只需要通过验证就可以防问所有的请求
	//authorizeRequests方法限定只对签名成功的用户请求
	//anyRequest方法限定所有请求
	//authenticated方法对所有签名成功的用户允许方法
	http.authorizeRequests().anyRequest () . 
	authenticated() 
	//and方法是连接词formLog代表使用Spring Security默认的登录界面
	. and().formLogin () 
	// httpBasic方法说明启用HTTP基础认证
	.and().httpBasic() ; 
}

源码可出,只需要通过用户认证便可以问所求地址。它还通过formLogin方法配置了使用Spring Security的默认登录页面和httpBasic方法启用浏览器的HTTP基础认证方式。所以在默认的情况,只要登录了用户,一切的请求就会畅通。

方法含义
access( String)参数为EL,如果返回为true则允许访问
anonymous()允许匿名访问
authorizeRequests()限定通过签名的请求
any Request()限定任意的请求
hasAnyRole(String … )将访问权限赋予多个角色(角色会自动加入前缀“ROLE)
hasRole(String)将访问权限赋予个角色(角色会自动加入前缀“ROLE”)
permitAll()无条件允许访问
and()连接词,并取消之前限定前提规则
httpBasic()启用浏览器的HTTP基础验证
fromLogin()启用spring Security默认的登录页面
not()对其他方法的访问采取求反
fullyAuthenticated()如果是完整验证(并非Remember-me),则允许访问
denyAll()无条件不允许任何访问
hasIpAddress(String)如果是给定的IP地址则允许访问
remberme()用户通过Remember-me功能验证就允许访问
hasAuthority(String)如果是给定的角色就允许访问(不加入前缀“ROLE_")
hasAnyAuthority(String … )如果是给定的角色中的任意一个就允许访(不加入前缀“ROLE_”)

上述的方法你就可以给予请求的地址一定权限保护了,有时候需要注意的一点是,对于这里的配置,会采取先配置优先的原则,因为有些时候权限会产生冲突。例如,代码若第二段是允许匿名的访问,而且没有给出地址但是,因为第一段中加入了限制,所以基于先配优先的原则,Spring Security还是会采用第一段的限制访问的。因此,在实际的工作中,把具体的配置放到前面配置,把不具体的配置放到后面配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值