我已经挣扎了几天了。我对Spring Boot还是个新手,喜欢不使用XML配置的想法。
我创建了一个RESTfull应用程序(使用JSON)。我正在按照本教程正确配置身份验证。
<http entry-point-ref="restAuthenticationEntryPoint">
<intercept-url pattern="/api/admin/**" access="ROLE_ADMIN"/>
<form-login
authentication-success-handler-ref="mySuccessHandler"
authentication-failure-handler-ref="myFailureHandler"
/>
<logout />
</http>
可以使用
没有提到任何关于如何使用Java配置来实现它的内容。
那么如何在不使用XML的情况下“注册”自己的RestAuthenticationEntryPoint
以防止在使用FormLogin时重定向到登录表单呢?
在我的尝试中,发现您可以使用basicAuth定义它,如下所示:
@Configuration
@Order(1)
public static class RestWebSecurityConfigurationAdapter extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
if (restAuthenticationEntryPoint == null) {
restAuthenticationEntryPoint = new RestAuthenticationEntryPoint();
}
http
.authorizeRequests()
.antMatchers("/**").hasAnyRole(Sec.ADMIN,Sec.SUPER_USER)
...
.and()
.httpBasic()
.authenticationEntryPoint(restAuthenticationEntryPoint)
但我使用的表单登录如下所示(没有httpBasic部分):
.and()
.formLogin()
.successHandler(mySavedRequestAwareAuthenticationSuccessHandler)
.failureHandler(simpleUrlAuthenticationFailureHandler)
问题是,当它没有收到凭据时,它会重定向到登录表单。因为这是一个REST服务,它不应该。
AuthenticationEntryPoint
但找不到重写它的方法。
有什么想法吗?
附注
不要认为将登录表单重写为只返回错误的自定义表单是个好主意。
您提供的参考文档中的引用指向http.exceptionhanding()
。您可以在那里设置共享入口点。
http.exceptionHandling().authenticationEntryPoint(myEntryPoint);
我正在尝试设置SpringXML配置,而不必创建进一步的。但是我经常遇到以下异常,即使我在 spring.xml: 我错过了什么?
问题内容: 我正在尝试设置spring xml配置,而不必创建进一步的。但是,即使我将数据库属性包括在 spring.xml: 我在这里想念什么? 问题答案: 在entityManagerFactory bean定义中指定“ packagesToScan”和“ persistenceUnitName”属性。 请注意,这适用于Spring版本> 3.1
我想更改自定义toast消息的背景,但不想为每种颜色创建新的xml文件。更具体地说; 这是我的custom_toast_border.xml文件,在drawable目录下。 我的custom_toast.xml布局 Java代码: 我想为吐司背景三种不同的颜色。我是否必须为每种颜色创建单独的文件?(像custom_toast_border_red,..._green,.._yellow)。我无法在
MOSN 自定义配置说明。 本文是对 MOSN 自定义配置的说明。 Duration String 字符串,由一个十进制数字和一个时间单位后缀组成,有效的时间单位为 ns、us(或?s)、ms、s、m、h,例如 1h、3s、500ms。 metadata metadata 用于 MOSN 路由和 Cluster Host 之间的匹配。 { "filter_metadata":{ "mo
如果你想自定义 Next.js 的高级配置,可以在根目录下新建next.config.js文件(与pages/ 和 package.json一起) 注意:next.config.js是一个 Node.js 模块,不是一个 JSON 文件,可以用于 Next 启动服务已经构建阶段,但是不作用于浏览器端。 // next.config.js module.exports = { /* config
我正在尝试构建一个基本的REST服务,它使用Spring Security和OAuth2.0身份验证和授权进行安全保护。 我试图限制所涉及的元素,所以我不是复制粘贴依赖于Spring bean、Spring MVC等的Spring Security Oath XML配置,而是直接使用Spring Security Oauth类。 尝试从/oauth/Token获取访问令牌时遇到了一个障碍。我可能缺