ASP.NET Core中独立创建的JWT未被授权。
创始人
2024-11-12 03:00:27
0

在ASP.NET Core中,可以使用JWT(JSON Web Token)来进行身份验证和授权。如果独立创建的JWT未被授权,可以按照以下步骤进行解决:

  1. 确保在身份验证中间件中配置了JWT身份验证。在Startup.cs文件的ConfigureServices方法中添加以下代码:
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
    .AddJwtBearer(options =>
    {
        options.TokenValidationParameters = new TokenValidationParameters
        {
            ValidateIssuer = true,
            ValidateAudience = true,
            ValidateLifetime = true,
            ValidateIssuerSigningKey = true,
            ValidIssuer = "your-issuer",
            ValidAudience = "your-audience",
            IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("your-secret-key"))
        };
    });
  1. 在需要授权的Controller或Action上添加[Authorize]特性。例如:
[Authorize]
public class MyController : Controller
{
    // ...
}
  1. 在生成和验证JWT的代码中,确保使用正确的Issuer、Audience和签名密钥。例如:
var tokenHandler = new JwtSecurityTokenHandler();
var key = Encoding.ASCII.GetBytes("your-secret-key");
var tokenDescriptor = new SecurityTokenDescriptor
{
    Subject = new ClaimsIdentity(new Claim[]
    {
        new Claim(ClaimTypes.Name, "your-username")
    }),
    Expires = DateTime.UtcNow.AddHours(1),
    SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature)
};
var token = tokenHandler.CreateToken(tokenDescriptor);
var jwtToken = tokenHandler.WriteToken(token);
  1. 在请求中包含正确的JWT,在请求的Authorization头中添加"Bearer "前缀和JWT值。例如:
GET /api/myendpoint HTTP/1.1
Host: localhost:5000
Authorization: Bearer your-jwt-token

通过以上步骤,可以确保独立创建的JWT在ASP.NET Core中能够正确授权。

相关内容

热门资讯

两分钟揭露!丫丫陕西打锅子插件... 两分钟揭露!丫丫陕西打锅子插件,多乐找刺激辅助(都是真的有挂)-哔哩哔哩丫丫陕西打锅子插件软件透明挂...
八分钟总结!小程序边锋干橙眼辅... 八分钟总结!小程序边锋干橙眼辅助,天天飞小鸡辅助(好像有挂)-哔哩哔哩1、金币登录送、破产送、升级送...
第4分钟必备!孝感卡五星辅助,... 第4分钟必备!孝感卡五星辅助,小程序微乐辅助软件(确实存在有挂)-哔哩哔哩1、实时小程序微乐辅助软件...
7分钟详细!越乡游嵊州辅助,约... 7分钟详细!越乡游嵊州辅助,约局吧辅助(都是真的是有挂)-哔哩哔哩暗藏猫腻,小编详细说明越乡游嵊州辅...
第十分钟详情!拱趴大菠萝调胜率... 第十分钟详情!拱趴大菠萝调胜率,赣牌圈控制牌型(其实是有挂)-哔哩哔哩1、进入到拱趴大菠萝调胜率黑科...
第四分钟揭露!威信茶馆app破... 第四分钟揭露!威信茶馆app破解版,微友辅助器免费版(总是是真的挂)-哔哩哔哩微友辅助器免费版辅助器...
第3分钟揭幕!手机透视辅助器a... 第3分钟揭幕!手机透视辅助器app,新518互游插件(原来有挂)-哔哩哔哩1、任何手机透视辅助器ap...
4分钟曝光!微乐游戏辅助脚本安... 4分钟曝光!微乐游戏辅助脚本安装,兴义水鱼天下有辅助吗(一贯真的有挂)-哔哩哔哩一、兴义水鱼天下有辅...
3分钟外挂!心悦辅助,杭州都莱... 3分钟外挂!心悦辅助,杭州都莱辅助软件有没有用(总是真的有挂)-哔哩哔哩1、许多玩家不知道杭州都莱辅...
5分钟推荐!宝宝吃吃吃开挂,微... 5分钟推荐!宝宝吃吃吃开挂,微乐家乡麻将辅助(一贯是真的挂)-哔哩哔哩1、每一步都需要思考,不同水平...