You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.4 KiB

6 months ago
  1. namespace Shentun.PeisReport.Api.Jwt
  2. {
  3. /// <summary>
  4. /// Jwt配置
  5. /// </summary>
  6. public class JwtConfig
  7. {
  8. private readonly IConfigurationSection _configSection;
  9. /// <summary>
  10. ///
  11. /// </summary>
  12. public JwtConfig()
  13. {
  14. var builder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json");
  15. var configuration = builder.Build();
  16. _configSection = configuration.GetSection("Jwt");
  17. }
  18. /// <summary>
  19. ///
  20. /// </summary>
  21. /// <param name="configuration"></param>
  22. public JwtConfig(IConfiguration configuration)
  23. {
  24. _configSection = configuration.GetSection("Jwt");
  25. }
  26. /// <summary>
  27. /// 颁发者
  28. /// </summary>
  29. public string Issuer => _configSection.GetValue("Issuer", "Shentun");
  30. /// <summary>
  31. /// 颁发对象
  32. /// </summary>
  33. public string Audience => _configSection.GetValue("Audience", "Client");
  34. /// <summary>
  35. /// 安全密钥
  36. /// </summary>
  37. public string SecurityKey => _configSection.GetValue("SecurityKey", "Shentun8Shentun8Shentun8Shentun8");
  38. /// <summary>
  39. /// Web端过期时间
  40. /// </summary>
  41. public double WebExpiration => _configSection.GetValue<double>("WebExpiration", 100);
  42. }
  43. }