diff options
| author | crobibero <cody@robibe.ro> | 2020-06-30 17:53:20 -0600 |
|---|---|---|
| committer | crobibero <cody@robibe.ro> | 2020-06-30 17:53:20 -0600 |
| commit | 14faebc7fe7a5a75d4d39ef0c70e6ff0106e76f3 (patch) | |
| tree | 0552309271dd0ff99c4db6f97ed0051f4d888591 /Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs | |
| parent | 7e94bb786432536e95f4e76ea1f8fe02dd292fef (diff) | |
| parent | d300d80479597faa4a8b6e840f6fcb1efdb63c8c (diff) | |
Merge remote-tracking branch 'upstream/api-migration' into api-livetv
Diffstat (limited to 'Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs')
| -rw-r--r-- | Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs b/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs index aad61d042..cfbabf795 100644 --- a/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs +++ b/Jellyfin.Server/Extensions/ApiServiceCollectionExtensions.cs @@ -6,6 +6,7 @@ using System.Reflection; using Jellyfin.Api; using Jellyfin.Api.Auth; using Jellyfin.Api.Auth.DefaultAuthorizationPolicy; +using Jellyfin.Api.Auth.DownloadPolicy; using Jellyfin.Api.Auth.FirstTimeSetupOrElevatedPolicy; using Jellyfin.Api.Auth.IgnoreSchedulePolicy; using Jellyfin.Api.Auth.LocalAccessPolicy; @@ -39,6 +40,7 @@ namespace Jellyfin.Server.Extensions public static IServiceCollection AddJellyfinApiAuthorization(this IServiceCollection serviceCollection) { serviceCollection.AddSingleton<IAuthorizationHandler, DefaultAuthorizationHandler>(); + serviceCollection.AddSingleton<IAuthorizationHandler, DownloadHandler>(); serviceCollection.AddSingleton<IAuthorizationHandler, FirstTimeSetupOrElevatedHandler>(); serviceCollection.AddSingleton<IAuthorizationHandler, IgnoreScheduleHandler>(); serviceCollection.AddSingleton<IAuthorizationHandler, LocalAccessHandler>(); @@ -53,6 +55,13 @@ namespace Jellyfin.Server.Extensions policy.AddRequirements(new DefaultAuthorizationRequirement()); }); options.AddPolicy( + Policies.Download, + policy => + { + policy.AddAuthenticationSchemes(AuthenticationSchemes.CustomAuthentication); + policy.AddRequirements(new DownloadRequirement()); + }); + options.AddPolicy( Policies.FirstTimeSetupOrElevated, policy => { @@ -186,7 +195,7 @@ namespace Jellyfin.Server.Extensions // Order actions by route path, then by http method. c.OrderActionsBy(description => - $"{description.ActionDescriptor.RouteValues["controller"]}_{description.HttpMethod}"); + $"{description.ActionDescriptor.RouteValues["controller"]}_{description.RelativePath}"); // Use method name as operationId c.CustomOperationIds(description => |
