d_sms_service/APT.MicroApi/APT.SC.WebApi/Auth/BearerAuthHanddler.cs

39 lines
1.7 KiB
C#
Raw Normal View History

2024-10-28 13:45:58 +08:00
using APT.Infrastructure.Core;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.IdentityModel.Tokens;
using System;
using System.Text;
using APT.Infrastructure.Api;
namespace APT.HM.WebApi
{
public static class BearerAuthHanddler
{
public static void RegisterBearAuth(this IServiceCollection services)
{
//services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
// .AddJwtBearer(options =>
// {
// options.TokenValidationParameters = new TokenValidationParameters
// {
// ValidateIssuer = true,//是否验证Issuer
// ValidateAudience = true,//是否验证Audience
// ValidateLifetime = true,//是否验证失效时间
// ClockSkew = TimeSpan.FromSeconds(600),
// ValidateIssuerSigningKey = true,//是否验证SecurityKey
// ValidAudience = "leedarson.com",//Audience
// ValidIssuer = "leedarson.com",//Issuer这两项和前面签发jwt的设置一致
// IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(ConfigurationManager.AppSettings["SecurityKey"]))//拿到SecurityKey
// };
// });
services.AddAuthentication("Bearer")
.AddJwtBearer("Bearer", options =>
{
options.Authority = ConfigurationManager.AppSettings["IdentityServer"];
options.RequireHttpsMetadata = false;
options.Audience = ConfigurationManager.AppSettings["Scope"];
});
}
}
}