diff options
| author | cvium <clausvium@gmail.com> | 2021-09-10 11:44:50 +0200 |
|---|---|---|
| committer | cvium <clausvium@gmail.com> | 2021-09-10 11:44:50 +0200 |
| commit | 6637a3096a1256caf50377faa66a35d9c1af9115 (patch) | |
| tree | 14fd663ba771bf83daeffe3fa75f86570a530fef /Jellyfin.Api/Auth | |
| parent | 8496d7638ab7823169c220b615289c401cefa9a0 (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.cs | 10 |
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> |
