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.

42 lines
1.2 KiB

  1. using System.Collections.Generic;
  2. using System.Security.Claims;
  3. using Volo.Abp.DependencyInjection;
  4. using Volo.Abp.Security.Claims;
  5. namespace Shentun.Sms.Security;
  6. [Dependency(ReplaceServices = true)]
  7. public class FakeCurrentPrincipalAccessor : ThreadCurrentPrincipalAccessor
  8. {
  9. protected override ClaimsPrincipal GetClaimsPrincipal()
  10. {
  11. return GetPrincipal();
  12. }
  13. private ClaimsPrincipal _principal;
  14. private ClaimsPrincipal GetPrincipal()
  15. {
  16. if (_principal == null)
  17. {
  18. lock (this)
  19. {
  20. if (_principal == null)
  21. {
  22. _principal = new ClaimsPrincipal(
  23. new ClaimsIdentity(
  24. new List<Claim>
  25. {
  26. new Claim(AbpClaimTypes.UserId,"2e701e62-0953-4dd3-910b-dc6cc93ccb0d"),
  27. new Claim(AbpClaimTypes.UserName,"admin"),
  28. new Claim(AbpClaimTypes.Email,"admin@abp.io")
  29. }
  30. )
  31. );
  32. }
  33. }
  34. }
  35. return _principal;
  36. }
  37. }