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

使用Spring Security允许匿名访问springdoc-openapi-ui

谢泉
2023-03-14

如何在受Spring Security保护的Spring Boot应用程序中允许匿名访问springdoc-openapi-ui(openapi3.0/swagger-ui.html)?

共有1个答案

羊舌承颜
2023-03-14

若要使用springdoc-openapi-ui/swagger-ui.html,请允许使用PermitAll方法匿名访问WebSecurityConfigurerAdapter中的以下endpoint:

    null
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

  @Override
  public void configure(HttpSecurity http) throws Exception {
    http.
        .authorizeRequests()
        .antMatchers("/v3/api-docs/**", "/swagger-ui/**", "/swagger-ui.html").permitAll()
        .anyRequest().authenticated()
        .and()
        .httpBasic(); //or anything else, e.g. .oauth2ResourceServer().jwt()
  }
}
  • org.springdoc:springdoc-openapi-ui
  • org.springdoc:springdoc-openapi-security
 类似资料:
  • 在调试级别进行日志记录时,我看到了Spring Security的以下反馈: 我试图实现的是有一个可以在任何时候调用的方法,它将发送一个答复,指示请求是否在登录的会话中。

  • 我有一个方法,我想允许匿名和身份验证访问。 我正在使用Spring Security3.2.4和基于java的配置。 在调试级别进行日志记录时,我看到了Spring Security的以下反馈: 我试图实现的是有一个可以在任何时候调用的方法,它将发送一个答复,指示请求是否在登录的会话中。

  • 问题内容: 我看到以下错误: 使用此代码: 是什么原因引起的,如何解决? 问题答案: 在当前域之外发出ajax请求时,Javascript是受限制的。 例1:您的域名为example.com,并且您想向test.com提出请求=>您不能。 例2:您的域名是example.com,并且您想向inner.example.com发送请求,但是您不能。 例3:您的域名为example.com:80,并且您

  • 我已创建IAM策略并分配给IAM用户。 请查找保险单 我未选中s3 bucket testingbucket00的“阻止新公共bucket策略”。 我尝试登录aws控制台使用IAM用户列出所有桶,但显示"访问为错误"。 我想给IAM用户分配一个桶,请帮忙。

  • 我正在使用Microsoft扩展访问Azure DevOps中的密钥库,从密钥库中获取秘密。我得到了这个错误消息,它似乎说我需要允许Azure Devops代理访问KeyVault的权限。“无法获取托管服务主体的访问令牌。请为虚拟机”https://aka.ms/azure-MSI-docs“配置托管服务标识(MSI)。状态代码:400,状态消息:错误请求” 我在一个单独的测试订阅中运行这个功能,

  • 是否可以使用接口而不是实现这些接口的控制器类来生成swagger ui文档? 将文档放在实现类中会使它看起来杂乱无章。Springfox有这个选项,它在springdoc中可用吗?如果是,怎么做?