Browse Source

Return anonymous principal instead of null in ThreadCurrentPrincipalAccessor

pull/25752/head
maliming 3 months ago
parent
commit
255a882586
No known key found for this signature in database GPG Key ID: A646B9CB645ECEA4
  1. 2
      framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/ThreadCurrentPrincipalAccessor.cs
  2. 6
      framework/test/Volo.Abp.Security.Tests/Volo/Abp/Security/Claims/CurrentPrincipalAccessor_Tests.cs

2
framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/ThreadCurrentPrincipalAccessor.cs

@ -8,6 +8,6 @@ public class ThreadCurrentPrincipalAccessor : CurrentPrincipalAccessorBase, ISin
{ {
protected override ClaimsPrincipal GetClaimsPrincipal() protected override ClaimsPrincipal GetClaimsPrincipal()
{ {
return (Thread.CurrentPrincipal as ClaimsPrincipal)!; return Thread.CurrentPrincipal as ClaimsPrincipal ?? new ClaimsPrincipal(new ClaimsIdentity());
} }
} }

6
framework/test/Volo.Abp.Security.Tests/Volo/Abp/Security/Claims/CurrentPrincipalAccessor_Tests.cs

@ -31,7 +31,8 @@ public class CurrentPrincipalAccessor_Tests : AbpIntegratedTest<AbpSecurityTestM
})); }));
_currentPrincipalAccessor.Principal.ShouldBe(null); _currentPrincipalAccessor.Principal.ShouldNotBeNull();
_currentPrincipalAccessor.Principal.Identity!.IsAuthenticated.ShouldBeFalse();
using (_currentPrincipalAccessor.Change(claimsPrincipal)) using (_currentPrincipalAccessor.Change(claimsPrincipal))
{ {
@ -44,6 +45,7 @@ public class CurrentPrincipalAccessor_Tests : AbpIntegratedTest<AbpSecurityTestM
_currentPrincipalAccessor.Principal.ShouldBe(claimsPrincipal); _currentPrincipalAccessor.Principal.ShouldBe(claimsPrincipal);
} }
_currentPrincipalAccessor.Principal.ShouldBeNull(); _currentPrincipalAccessor.Principal.ShouldNotBeNull();
_currentPrincipalAccessor.Principal.Identity!.IsAuthenticated.ShouldBeFalse();
} }
} }

Loading…
Cancel
Save