Environment name will be pulled from environment variable: ASPNETCORE_ENVIRONMENT
21 lines
772 B
C#
21 lines
772 B
C#
using System;
|
|
using System.Security.Claims;
|
|
using System.Security.Principal;
|
|
using YABA.Common.Lookups;
|
|
using YABA.Common.Utils;
|
|
|
|
namespace YABA.Common.Extensions
|
|
{
|
|
public static class UserIdentityExtensions
|
|
{
|
|
public static string GetUserId(this IIdentity identity) => GetCustomClaim(identity, ClaimsLookup.UserId);
|
|
public static string GetAuthProviderId(this IIdentity identity) => GetCustomClaim(identity, ClaimsLookup.AuthProviderId);
|
|
|
|
public static string GetCustomClaim(this IIdentity identity, ClaimsLookup claim)
|
|
{
|
|
var claimsIdentity = identity as ClaimsIdentity;
|
|
return claimsIdentity.FindFirst(claim.GetClaimName(EnvironmentUtils.IsDevelopmentEnvironment()))?.Value.ToString();
|
|
}
|
|
}
|
|
}
|