美文网首页
Swagger token认证,一次配置多次生效

Swagger token认证,一次配置多次生效

作者: 头顶青天_脚踏实地 | 来源:发表于2019-11-20 18:15 被阅读0次

    swagger 给开发人员调试接口带来了很大的方便,但是当调试接口的时候,如果需要校验 token (此处叫Authorize),会很麻烦,每次访问接口都需要输入一次 token去认证,在此提供一次配置多次生效的解决方案。

1、在SwaggerConfig.java中配置,重启后端项目后,在swagger页面的右上角会出现一个 Authorize 按钮

    (1)在securitySchemes的ApiKey中增加一个名名称为“Authorization”,类型为“header”的参数

private List<ApiKey> securitySchemes() {

    return newArrayList( new ApiKey("Authorization", "Authorization", "header"));

}

    (2)在securityContexts中添加你要 一次配置多次生效 的接口名称,forPaths() 中放入要生效的接口路径的正则表达式,如 .forPaths(PathSelectors.regex("^(?!menus).*$")) 表示所有带有 menus 的接口路径。此处,使用 PathSelectors.any() 表示所有接口路径都生效

private List<SecurityContext> securityContexts() {

    return newArrayList( SecurityContext.builder() .securityReferences(defaultAuth())

        // .forPaths(PathSelectors.regex("^(?!menus).*$"))

            .forPaths(PathSelectors.any()) 

            .build() );

}

List<SecurityReference> defaultAuth() {

    AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything");

    AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];

    authorizationScopes[0] = authorizationScope;

    return newArrayList( new SecurityReference("Authorization", authorizationScopes));

}

(3)在createRestApi 中加入以上两步配置的 securitySchemes 和 securityContexts

return new Docket(DocumentationType.SWAGGER_2).    

    useDefaultResponseMessages(false) .select() .        

    apis(RequestHandlerSelectors.any()) .        

    paths(PathSelectors.regex("^(?!auth).*$")) .       

     build() .        

    securitySchemes(securitySchemes()) .        

    securityContexts(securityContexts()) ;

}

2、点击Authorize ,输入Authorize 值

    (1)找到任意接口的 Authorization 值,我的方法是 打开F12,任意访问一个接口,在 NetWork 中的header信息找到Authorization 值


    (2)在Authorize弹框的 value 输入框中输入刚刚获取的 Authorize 值,然后点击 Authorize 使用该 Authorize 值。接下来我们访问接口就无需理会 要输入的 Authorize 值了

相关文章

  • Swagger token认证,一次配置多次生效

    swagger 给开发人员调试接口带来了很大的方便,但是当调试接口的时候,如果需要校验 token (此处叫Aut...

  • swagger 配置Token

    后台有权限认证是springboot+jwt+shiro+swagger的,swagger配置token 1 首先...

  • Spring security OAuth2 Token配置

    1.基本Token参数配置 1.1 将token配置存储到redis中 1.2配置认证服务器 2.使用JWT替换默...

  • laravel5.4 API认证(passport)

    安装依赖 配置文件 生成认证数据表 该命令将会创建生成安全访问令牌(token)所需的加密键 认证用户的token...

  • django TokenAuthentication 认证方式

    settings的配置 因为token认证的方式 ,会在数据库中生成一个token表,存储token值,并与use...

  • Swagger配置鉴权token

    众所周知swagger在API文档生成及测试方面非常方便,但是很多的API调用都需要用到token验证,本文就介绍...

  • Django:rest framework之认证(authent

    用户url传入的token认证 请求头认证 多个认证规则 认证和权限 全局使用上述操作中均是对单独视图进行特殊配置...

  • redis-访问密码

    服务内配置认证密码:不重启就生效;重启后会失效;(建议配合配置文件一起修改,无论是否重启都会生效) 配置文件red...

  • kubectl配置token认证

    如果没有account 查看token 配置kubectl config 使用

  • Nginx 配置用户登录

    安装 htpasswd 工具 创建认证用户 添加新用户 添加Nginx配置 重启Nginx生效

网友评论

      本文标题:Swagger token认证,一次配置多次生效

      本文链接:https://www.haomeiwen.com/subject/uexaictx.html