繁体   English   中英

使用oauth2在浏览器中登录后访问REST服务,并使用java config访问spring security

[英]Accessing REST service after login within browser using oauth2 and spring security using java config

我已经使用sparkl2应用程序实现了Oauth2。 我正在使用java配置在sparkl2应用程序中描述的spring-security。 我可以使用curl成功获取身份验证令牌,也可以使用curl调用Web服务。

我的问题是

登录到应用程序后,如何在同一浏览器中访问REST服务? 我不确定在这里想念什么吗?

让我详细说明我的问题。 浏览器在登录后保持会话状态的方式,我们可以访问应用程序中的任何受保护资源,什么是最佳实现方式,以便我可以从浏览器测试我的REST api

Spring Security使它保持会话状态。 会话ID存储在浏览器Cookie中,因此它随每个请求一起传递给您的服务。 然后,Spring Security应该接受它,并检查是否允许特定会话(用户登录)访问此特定URL。

我将从在Java配置中配置安全路径开始:

http.authorizeRequests().antMatchers().hasAnyRole(...)

或其他一些方法代替antMatchers。

您可能必须在一些oauth回调上将用户登录到spring安全性中,例如:

Authentication auth = new UsernamePasswordAuthenticationToken(user, null, authorities);
SecurityContextHolder.getContext().setAuthentication(auth);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM