public static Result <OpenIdKey> GetOpenIdKey(this ClaimsPrincipal claimsPrincipal) { var nameIdentifier = claimsPrincipal.Claims.FirstOrDefault(q => q.Type.Equals(ClaimTypes.NameIdentifier, StringComparison.OrdinalIgnoreCase))?.Value ?? string.Empty; return(string.IsNullOrWhiteSpace(nameIdentifier) ? Result <OpenIdKey> .Error("Claim missing") : Result <OpenIdKey> .Success(OpenIdKey.Create(nameIdentifier))); }