You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OpenAPI Generator生成Java API时Swagger未显示认证按钮问题

问题分析与解决

你的YAML配置存在缩进语法错误,这是导致生成的API文件无安全相关内容的核心原因。

1. YAML配置的错误点

你当前的YAML中,type、scheme、bearerFormat字段与bearerAuth同级,没有作为bearerAuth的子属性,导致OpenAPI解析器无法识别这是一个有效的安全方案定义。

错误的配置片段:

components:
  securitySchemes:
    bearerAuth:
    type: http
    scheme: bearer
    bearerFormat: JWT

2. 修正后的YAML配置

将type等字段缩进至bearerAuth下方,作为它的子属性:

components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
security:
  - bearerAuth: []

3. 额外注意事项

  • 生成器参数配置:如果使用的是OpenAPI Generator的spring或spring-boot生成器,确保添加必要的参数启用安全注解生成,例如:
    openapi-generator generate -i your-spec.yaml -g spring --additional-properties=useSpringSecurity=true
    
  • 版本兼容性:部分旧版本的OpenAPI Generator对安全配置的支持存在缺陷,建议升级到较新的稳定版本(如v6.x及以上)。

修正上述配置后,重新生成的Controller类应该会自动包含@SecurityScheme注解,且全局的security配置会让所有接口默认启用Bearer JWT校验。

内容的提问来源于stack exchange,提问作者cucuru

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 03:42:18