颐和医院后端代码

JwtToken.cs 951B

12345678910111213141516171819202122232425262728
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IdentityModel.Tokens.Jwt;
  4. using System.Security.Claims;
  5. using System.Text;
  6. namespace Api.SignToken
  7. {
  8. public class JwtToken
  9. {
  10. public static dynamic BuildJwtToken(Claim[] claims, PermissionRequirement permissionRequirement)
  11. {
  12. var now = DateTime.UtcNow;
  13. var jwt = new JwtSecurityToken(
  14. issuer: permissionRequirement.Issuer,//签发者
  15. audience: permissionRequirement.Audience,//订阅者,使用人
  16. claims: claims,
  17. notBefore: now,//在此时间之前不能被接收处理
  18. expires: now.Add(permissionRequirement.Expiration),//超期时间
  19. signingCredentials: permissionRequirement.SigningCredentials
  20. );
  21. var encodedJwt = new JwtSecurityTokenHandler().WriteToken(jwt);
  22. return encodedJwt;
  23. }
  24. }
  25. }