• Welcome to the world's largest Chinese hacker forum

    Welcome to the world's largest Chinese hacker forum, our forum registration is open! You can now register for technical communication with us, this is a free and open to the world of the BBS, we founded the purpose for the study of network security, please don't release business of black/grey, or on the BBS posts, to seek help hacker if violations, we will permanently frozen your IP and account, thank you for your cooperation. Hacker attack and defense cracking or network Security

    business please click here: Creation Security  From CNHACKTEAM

招摇测试 Net Core API加入授权验证(启用JWT授权)


Recommended Posts

.Net Core 的Swagger测试加入授权验证(启用JWT授权)

URL:如何使用Swagger为添加JWT授权指令。NET Core 3.0应用程序-简介(jianshu.com)

-背景和意义:

1.我们在运行一个项目的时候,经常会遇到授权或者请求的需求,需要一个令牌来实现相应的功能(访问相应的接口)。

【写代码的时候用filter添加授权(登录与否)验证,对应的方法在运行时无法传入token,所以登录会一直不成功】

因此,我们需要在其中添加授权验证。只要授权成功,Swagger测试执行的相应功能就不需要再次验证…

2.如果不使用‘授权验证'’,在Swagger测试的过程中,执行需要授权的功能时需要逐个输入令牌,只要重新运行-trouble就需要输入相应的令牌。

1.不加入授权验证。

-将始终返回401(自定义),即没有登录提示。

-而且使用过滤器后,不需要每个方法单独编写和验证,也不需要对应的方法获取令牌(接收/传递引用)。

ycdspefzphj4696.png

2.加入授权验证。

na3qiycwc544697.png

2-1代码实现

-在启动类中添加ConfigureServices方法。

yqmemysqwpr4698.png

//swagger授权方案定义

C.addsecuritydefinition ('bearer '),//定义授权方案的名称。

新的OpenApiSecurityScheme()

{

Description='请输入令牌:x-token: {token} ',//描述文本

Name='X-Token ',//参数名-与头的参数名相同。

In=参数位置。头,//参数放在头中。

Type=securityschemetype.apikey,//type为apikey。

});

//加载授权方案

c.AddSecurityRequirement(新的OpenApiSecurityRequirement

{

{

新建OpenApiSecurityScheme

{

Reference=new OpenApiReference {

Type=ReferenceType。安全方案,

Id='不记名'//授权方案名称

}

},

新字符串[] { }

}

});

//在Swagger中添加验证结束

Link to comment
Share on other sites