系统 授权服务 配置

master
xiaochanghai 1 year ago
parent 28ca041205
commit 08b16880a5
  1. 30
      Tiobon.Core.Extensions/ServiceExtensions/AuthorizationSetup.cs

@ -1,23 +1,20 @@
using Tiobon.Core.AuthHelper;
using Tiobon.Core.Common;
using Tiobon.Core.Common.AppConfig;
using System.Security.Claims;
using System.Text;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.IdentityModel.Tokens;
using System;
using System.Collections.Generic;
using System.Security.Claims;
using System.Text;
using System.Security;
using Tiobon.Core.AuthHelper;
using Tiobon.Core.Common;
using Tiobon.Core.Common.AppConfig;
namespace Tiobon.Core.Extensions;
namespace Tiobon.Core.Extensions
/// <summary>
/// 系统 授权服务 配置
/// </summary>
public static class AuthorizationSetup
{
/// <summary>
/// 系统 授权服务 配置
/// </summary>
public static class AuthorizationSetup
{
public static void AddAuthorizationSetup(this IServiceCollection services)
{
if (services == null) throw new ArgumentNullException(nameof(services));
@ -49,7 +46,7 @@ namespace Tiobon.Core.Extensions
var Issuer = AppSettings.app(new string[] { "Audience", "Issuer" });
var Audience = AppSettings.app(new string[] { "Audience", "Audience" });
var ExpirationHourString = AppSettings.app(new string[] { "Audience", "ExpirationHour" });
var ExpirationHour = string.IsNullOrWhiteSpace(ExpirationHourString) ? 4 : Convert.ToInt32(ExpirationHourString);
var ExpirationHour = string.IsNullOrWhiteSpace(ExpirationHourString) ? 4 : Convert.ToInt32(ExpirationHourString) + 1;
var signingCredentials = new SigningCredentials(signingKey, SecurityAlgorithms.HmacSha256);
// 如果要数据库动态绑定,这里先留个空,后边处理器里动态赋值
@ -63,7 +60,7 @@ namespace Tiobon.Core.Extensions
Issuer,//发行人
Audience,//听众
signingCredentials,//签名凭据
expiration: TimeSpan.FromSeconds(240 * 60 * ExpirationHour)//接口的过期时间
expiration: TimeSpan.FromSeconds(60 * 60 * ExpirationHour)//接口的过期时间
);
#endregion
// 3、自定义复杂的策略授权
@ -95,5 +92,4 @@ namespace Tiobon.Core.Extensions
services.AddScoped<IAuthorizationHandler, PermissionHandler>();
services.AddSingleton(permissionRequirement);
}
}
}

Loading…
Cancel
Save