aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Api/Helpers/ClaimHelpers.cs
diff options
context:
space:
mode:
authorRyan Petris <ryan@petris.net>2020-11-15 19:55:30 -0700
committerRyan Petris <ryan@petris.net>2020-11-15 19:55:30 -0700
commit8204b25a56af7ddb20497f3d7ad8e1d8daaff7ca (patch)
treef8da813808df73670baa4eecfc67db319783aaa1 /Jellyfin.Api/Helpers/ClaimHelpers.cs
parent81d5eb4db5918debe3194236288492f26ad135bb (diff)
parent8d1d77db94a4fcfc6d8a37b38100ce0b7267690b (diff)
Merge branch 'master' into fix-hdhomerun
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