当前位置: 首页 > 知识库问答 >
问题:

Spring启动执行器与Spring安全和表单基本认证

欧盛
2023-03-14

以下是Web安全性的配置:

@Configuration
@EnableWebSecurity
@Order(SecurityProperties.ACCESS_OVERRIDE_ORDER)
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
private AuthenticationLookupService authenticationLookupService;
private AuthenticationManagerBuilder authenticationManagerBuilder;
private UrlSuccessAuthenticationHandler successHandler;

@Autowired
public void setAuthenticationLookupService(AuthenticationLookupService authenticationLookupService) {
    this.authenticationLookupService = authenticationLookupService;
}

@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) {
    this.authenticationManagerBuilder = auth;
}

@Autowired
public void setSuccessHandler(UrlSuccessAuthenticationHandler successHandler) {
    this.successHandler = successHandler;
}

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.authorizeRequests()
            .antMatchers("/", "/index.html", "/auth/**").permitAll()
            .anyRequest().authenticated()
            .and()
            .formLogin()
            .loginPage("/index.html").successHandler(successHandler)
            .permitAll()
            .and()
            .logout()
            .permitAll();

    http.csrf().disable(); // todo: fix later
}

@PostConstruct
public void process() throws Exception {
    this.authenticationManagerBuilder.userDetailsService(this.authenticationLookupService).passwordEncoder(new ShaPasswordEncoder());
}

}

共有1个答案

马安邦
2023-03-14

在application.properties或application.yml中添加以下值,然后在弹出窗口询问用户名和密码时提供此凭据

security.user.name=admin
security.user.password=secret

如果要提供值,请检查该用户是否具有ADMIN角色,因为执行器需要ADMIN角色用户来访问敏感endpoint。

更新如果您使用的是spring-boot 1.5.*+,那么用户应该具有acture角色

 类似资料:
  • 如何为执行器endpoint启用安全性,当在Spring启动1.5.4.RELEASE项目中没有Spring Security模块依赖项时 我在应用程序中添加了以下值。属性,但当我单击任何endpoint时,我会得到错误 我应该如何启用安全性?

  • 我在我的应用程序中使用了Spring-Boot1.3.1和Spring-Boot-Actutor。我使用作为中的父级。 为了禁用安全性,我在中添加了2个条目。 它仍然没有禁用基本的安全性。当我在本地Tomcat中启动应用程序时,我看到日志文件中的默认密码。

  • 问题内容: 我一直在研究Spring / Spring MVC应用程序,并且希望添加性能指标。我遇到过Spring Boot Actuator,它看起来是一个不错的解决方案。但是我的应用程序不是Spring Boot应用程序。我的应用程序在传统容器Tomcat 8中运行。 我添加了以下依赖 我创建了以下配置类。 我什至可以按照StackOverflow另一篇文章的建议在每个配置类上添加 问题答案:

  • 我一直在阅读Spring引导执行器,我很难区分两个应用程序。属性设置 我想自定义执行器endpoint的访问规则。我可以使用属性控制所有执行器endpoint灵敏度。我的理解是,敏感endpoint将需要授权。我还可以通过属性更改endpoint的可访问性。 敏感度控制和安全启动之间有什么区别?

  • 你好,我是Spring和Spring保安新来的。目前我正在Spring开发rest api。根据spring提供rest API。rest api是无状态的,所以我们不能创建到rest api的会话。因为它是一个无状态的,如果我们这样做,那么它是违反rest设计的。所以我的问题是,在REST中,我们是不是可以永远保持服务器端用户的状态?我们可以维护它的客户端吗??怎么做??在spring basi

  • 我正在测试家庭控制器 我使用spring security作为用户名“user”,默认情况下作为密码进行测试,但@PreAuthorize不起作用 的结果 预期结果: 实际结果: 我错过了什么吗?