Spring boot 无形弹簧
我有一些关于在不使用表单后退的情况下设置SPNEGO的问题 我正在编写一个web服务,它使用SPNEGO身份验证并为经过身份验证的主体返回一个签名的JWT。我对表单没有任何用处(例如,不能使用仅具有身份验证主体的表单)Spring boot 无形弹簧,spring-boot,spring-security,spnego,spring-security-kerberos,Spring Boot,Spring Security,Spnego,Spring Security Kerberos,我有一些关于在不使用表单后退的情况下设置SPNEGO的问题 我正在编写一个web服务,它使用SPNEGO身份验证并为经过身份验证的主体返回一个签名的JWT。我对表单没有任何用处(例如,不能使用仅具有身份验证主体的表单) 我是否可以跳过spring SPNEGO引用中所示的formLogin()和logout()部分,并使用零参数SpnegoEntryPoint构造函数 从中可以看出,如果缺少授权标头,那么过滤器实际上不会向调用者返回带有WWW-Authenticate:agreement质询的4
else
。我读对了吗?RFC声明
如果服务器收到访问保护对象的请求,以及
如果尚未发送可接受的授权标头,则服务器
以“401未经授权”状态代码和“WWW-
验证:“头
http.exceptionHandling()
.authenticationEntryPoint(spnegoEntryPoint())
.and()
.authorizeRequests()
.antMatchers("/v1/**").permitAll()
.anyRequest().authenticated()
.and()
.addFilterBefore()...`
当我删除.antMatchers(“/v1/**”).permitAll()
时,SpnegoEntryPoint启动,现在我看到一个带有WWW-Authenticate:congregate响应的401
当然,现在我得到了一个Kerberos数据库中找不到的服务器
gss_init_sec_context()故障,但我怀疑这与SPN设置或主机名解析(因为我正在Macbook上本地测试)有关,而不是与Spring应用程序有关
当我开始工作时,将最终更新一次
那么,什么时候调用入口点呢?只有在例外情况下?我正在尝试一步一步地通过入口点以及过滤器,并且在请求时执行不会到达入口点。