aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Api/Helpers/ClaimHelpers.cs
diff options
context:
space:
mode:
authorStepan <ste.martinek+git@gmail.com>2020-11-10 12:42:49 +0100
committerStepan <ste.martinek+git@gmail.com>2020-11-10 12:42:49 +0100
commitc0747512d6d3973ac102ea4990d2e1fa44e5a5d1 (patch)
tree2cf9ad33386422dfb00757237b68523e60284034 /Jellyfin.Api/Helpers/ClaimHelpers.cs
parent3d1076ae42433314835f4277ff42cd5ef1e6c016 (diff)
parentcdf979efef94dc29f4ef0b4ad3f918b4983560e5 (diff)
Merge remote-tracking branch 'jellyfin/master' into emby-namig-nullable
Diffstat (limited to 'Jellyfin.Api/Helpers/ClaimHelpers.cs')
-rw-r--r--Jellyfin.Api/Helpers/ClaimHelpers.cs13
1 files changed, 13 insertions, 0 deletions
diff --git a/Jellyfin.Api/Helpers/ClaimHelpers.cs b/Jellyfin.Api/Helpers/ClaimHelpers.cs
index df235ced2..29e6b4193 100644
--- a/Jellyfin.Api/Helpers/ClaimHelpers.cs
+++ b/Jellyfin.Api/Helpers/ClaimHelpers.cs
@@ -63,6 +63,19 @@ namespace Jellyfin.Api.Helpers
public static string? GetToken(in ClaimsPrincipal user)
=> GetClaimValue(user, InternalClaimTypes.Token);
+ /// <summary>
+ /// Gets a flag specifying whether the request is using an api key.
+ /// </summary>
+ /// <param name="user">Current claims principal.</param>
+ /// <returns>The flag specifying whether the request is using an api key.</returns>
+ public static bool GetIsApiKey(in ClaimsPrincipal user)
+ {
+ var claimValue = GetClaimValue(user, InternalClaimTypes.IsApiKey);
+ return !string.IsNullOrEmpty(claimValue)
+ && bool.TryParse(claimValue, out var parsedClaimValue)
+ && parsedClaimValue;
+ }
+
private static string? GetClaimValue(in ClaimsPrincipal user, string name)
{
return user?.Identities