aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Api/Auth
diff options
context:
space:
mode:
authorcvium <clausvium@gmail.com>2021-09-10 11:44:50 +0200
committercvium <clausvium@gmail.com>2021-09-10 11:44:50 +0200
commit6637a3096a1256caf50377faa66a35d9c1af9115 (patch)
tree14fd663ba771bf83daeffe3fa75f86570a530fef /Jellyfin.Api/Auth
parent8496d7638ab7823169c220b615289c401cefa9a0 (diff)
Remove the dependency on BaseAuthorizationHandler
Diffstat (limited to 'Jellyfin.Api/Auth')
-rw-r--r--Jellyfin.Api/Auth/AnonymousLanAccessPolicy/AnonymousLanAccessHandler.cs (renamed from Jellyfin.Api/Auth/LocalNetworkAccessPolicy/LocalNetworkAccessHandler.cs)23
-rw-r--r--Jellyfin.Api/Auth/AnonymousLanAccessPolicy/AnonymousLanAccessRequirement.cs (renamed from Jellyfin.Api/Auth/LocalNetworkAccessPolicy/LocalNetworkAccessRequirement.cs)4
-rw-r--r--Jellyfin.Api/Auth/BaseAuthorizationHandler.cs10
3 files changed, 14 insertions, 23 deletions
diff --git a/Jellyfin.Api/Auth/LocalNetworkAccessPolicy/LocalNetworkAccessHandler.cs b/Jellyfin.Api/Auth/AnonymousLanAccessPolicy/AnonymousLanAccessHandler.cs
index d691c5594..b2b0e08a8 100644
--- a/Jellyfin.Api/Auth/LocalNetworkAccessPolicy/LocalNetworkAccessHandler.cs
+++ b/Jellyfin.Api/Auth/AnonymousLanAccessPolicy/AnonymousLanAccessHandler.cs
@@ -1,37 +1,38 @@
using System.Threading.Tasks;
using MediaBrowser.Common.Net;
-using MediaBrowser.Controller.Library;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
-namespace Jellyfin.Api.Auth.LocalNetworkAccessPolicy
+namespace Jellyfin.Api.Auth.AnonymousLanAccessPolicy
{
/// <summary>
/// Local access handler.
/// </summary>
- public class LocalNetworkAccessHandler : BaseAuthorizationHandler<LocalNetworkAccessRequirement>
+ public class AnonymousLanAccessHandler : AuthorizationHandler<AnonymousLanAccessRequirement>
{
+ private readonly INetworkManager _networkManager;
+ private readonly IHttpContextAccessor _httpContextAccessor;
+
/// <summary>
- /// Initializes a new instance of the <see cref="LocalNetworkAccessHandler"/> class.
+ /// Initializes a new instance of the <see cref="AnonymousLanAccessHandler"/> class.
/// </summary>
- /// <param name="userManager">Instance of the <see cref="IUserManager"/> interface.</param>
/// <param name="networkManager">Instance of the <see cref="INetworkManager"/> interface.</param>
/// <param name="httpContextAccessor">Instance of the <see cref="IHttpContextAccessor"/> interface.</param>
- public LocalNetworkAccessHandler(
- IUserManager userManager,
+ public AnonymousLanAccessHandler(
INetworkManager networkManager,
IHttpContextAccessor httpContextAccessor)
- : base(userManager, networkManager, httpContextAccessor)
{
+ _networkManager = networkManager;
+ _httpContextAccessor = httpContextAccessor;
}
/// <inheritdoc />
- protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, LocalNetworkAccessRequirement requirement)
+ protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, AnonymousLanAccessRequirement requirement)
{
- var ip = HttpContextAccessor.HttpContext?.Connection.RemoteIpAddress;
+ var ip = _httpContextAccessor.HttpContext?.Connection.RemoteIpAddress;
// Loopback will be on LAN, so we can accept null.
- if (ip == null || NetworkManager.IsInLocalNetwork(ip))
+ if (ip == null || _networkManager.IsInLocalNetwork(ip))
{
context.Succeed(requirement);
}
diff --git a/Jellyfin.Api/Auth/LocalNetworkAccessPolicy/LocalNetworkAccessRequirement.cs b/Jellyfin.Api/Auth/AnonymousLanAccessPolicy/AnonymousLanAccessRequirement.cs
index 29ca9c355..269ecf2a4 100644
--- a/Jellyfin.Api/Auth/LocalNetworkAccessPolicy/LocalNetworkAccessRequirement.cs
+++ b/Jellyfin.Api/Auth/AnonymousLanAccessPolicy/AnonymousLanAccessRequirement.cs
@@ -1,11 +1,11 @@
using Microsoft.AspNetCore.Authorization;
-namespace Jellyfin.Api.Auth.LocalNetworkAccessPolicy
+namespace Jellyfin.Api.Auth.AnonymousLanAccessPolicy
{
/// <summary>
/// The local network authorization requirement.
/// </summary>
- public class LocalNetworkAccessRequirement : IAuthorizationRequirement
+ public class AnonymousLanAccessRequirement : IAuthorizationRequirement
{
}
}
diff --git a/Jellyfin.Api/Auth/BaseAuthorizationHandler.cs b/Jellyfin.Api/Auth/BaseAuthorizationHandler.cs
index 62d590b18..13d3257df 100644
--- a/Jellyfin.Api/Auth/BaseAuthorizationHandler.cs
+++ b/Jellyfin.Api/Auth/BaseAuthorizationHandler.cs
@@ -37,16 +37,6 @@ namespace Jellyfin.Api.Auth
}
/// <summary>
- /// Gets a value indicating <see cref="INetworkManager"/> being used.
- /// </summary>
- protected INetworkManager NetworkManager => _networkManager;
-
- /// <summary>
- /// Gets a value indicating the <see cref="HttpContextAccessor"/> being used.
- /// </summary>
- protected IHttpContextAccessor HttpContextAccessor => _httpContextAccessor;
-
- /// <summary>
/// Validate authenticated claims.
/// </summary>
/// <param name="claimsPrincipal">Request claims.</param>