A lot
This commit is contained in:
41
KTUSAPS/Extensions/ClaimsPrincipalExtensions.cs
Normal file
41
KTUSAPS/Extensions/ClaimsPrincipalExtensions.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using System.Linq;
|
||||
using System.Security.Claims;
|
||||
|
||||
namespace KTUSAPS.Extensions
|
||||
{
|
||||
public static class ClaimsPrincipalExtensions
|
||||
{
|
||||
private static string getClaimValue(ClaimsPrincipal claimsPrincipal, string claimType)
|
||||
{
|
||||
return claimsPrincipal.Claims.FirstOrDefault(c => c.Type == claimType)?.Value;
|
||||
}
|
||||
|
||||
public static string GetUserId(this ClaimsPrincipal claimsPrincipal)
|
||||
{
|
||||
if (claimsPrincipal == null)
|
||||
return null;
|
||||
return getClaimValue(claimsPrincipal, ClaimTypes.NameIdentifier);
|
||||
}
|
||||
|
||||
public static string GetName(this ClaimsPrincipal claimsPrincipal)
|
||||
{
|
||||
if (claimsPrincipal == null)
|
||||
return null;
|
||||
return getClaimValue(claimsPrincipal, "name");
|
||||
}
|
||||
|
||||
public static string GetEmail(this ClaimsPrincipal claimsPrincipal)
|
||||
{
|
||||
if (claimsPrincipal == null)
|
||||
return null;
|
||||
return getClaimValue(claimsPrincipal, ClaimTypes.Email);
|
||||
}
|
||||
|
||||
public static string GetObjectId(this ClaimsPrincipal claimsPrincipal)
|
||||
{
|
||||
if (claimsPrincipal == null)
|
||||
return null;
|
||||
return getClaimValue(claimsPrincipal, "http://schemas.microsoft.com/identity/claims/objectidentifier");
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user