add policy to the subtitle controller
This commit is contained in:
parent
9f259aa404
commit
8ada8dbbac
|
@ -84,4 +84,9 @@ public static class Policies
|
|||
/// Policy name for managing LiveTV.
|
||||
/// </summary>
|
||||
public const string LiveTvManagement = "LiveTvManagement";
|
||||
|
||||
/// <summary>
|
||||
/// Policy name for accessing subtitles management.
|
||||
/// </summary>
|
||||
public const string SubtitleManagement = "SubtitleManagement";
|
||||
}
|
||||
|
|
|
@ -115,7 +115,7 @@ public class SubtitleController : BaseJellyfinApiController
|
|||
/// <response code="200">Subtitles retrieved.</response>
|
||||
/// <returns>An array of <see cref="RemoteSubtitleInfo"/>.</returns>
|
||||
[HttpGet("Items/{itemId}/RemoteSearch/Subtitles/{language}")]
|
||||
[Authorize]
|
||||
[Authorize(Policy = Policies.SubtitleManagement)]
|
||||
[ProducesResponseType(StatusCodes.Status200OK)]
|
||||
public async Task<ActionResult<IEnumerable<RemoteSubtitleInfo>>> SearchRemoteSubtitles(
|
||||
[FromRoute, Required] Guid itemId,
|
||||
|
@ -135,7 +135,7 @@ public class SubtitleController : BaseJellyfinApiController
|
|||
/// <response code="204">Subtitle downloaded.</response>
|
||||
/// <returns>A <see cref="NoContentResult"/>.</returns>
|
||||
[HttpPost("Items/{itemId}/RemoteSearch/Subtitles/{subtitleId}")]
|
||||
[Authorize]
|
||||
[Authorize(Policy = Policies.SubtitleManagement)]
|
||||
[ProducesResponseType(StatusCodes.Status204NoContent)]
|
||||
public async Task<ActionResult> DownloadRemoteSubtitles(
|
||||
[FromRoute, Required] Guid itemId,
|
||||
|
@ -399,7 +399,7 @@ public class SubtitleController : BaseJellyfinApiController
|
|||
/// <response code="204">Subtitle uploaded.</response>
|
||||
/// <returns>A <see cref="NoContentResult"/>.</returns>
|
||||
[HttpPost("Videos/{itemId}/Subtitles")]
|
||||
[Authorize(Policy = Policies.RequiresElevation)]
|
||||
[Authorize(Policy = Policies.SubtitleManagement)]
|
||||
[ProducesResponseType(StatusCodes.Status204NoContent)]
|
||||
public async Task<ActionResult> UploadSubtitle(
|
||||
[FromRoute, Required] Guid itemId,
|
||||
|
|
|
@ -82,6 +82,7 @@ namespace Jellyfin.Server.Extensions
|
|||
options.AddPolicy(Policies.SyncPlayCreateGroup, new SyncPlayAccessRequirement(SyncPlayAccessRequirementType.CreateGroup));
|
||||
options.AddPolicy(Policies.SyncPlayJoinGroup, new SyncPlayAccessRequirement(SyncPlayAccessRequirementType.JoinGroup));
|
||||
options.AddPolicy(Policies.SyncPlayIsInGroup, new SyncPlayAccessRequirement(SyncPlayAccessRequirementType.IsInGroup));
|
||||
options.AddPolicy(Policies.SubtitleManagement, new UserPermissionRequirement(PermissionKind.EnableSubtitleManagement));
|
||||
options.AddPolicy(
|
||||
Policies.RequiresElevation,
|
||||
policy => policy.AddAuthenticationSchemes(AuthenticationSchemes.CustomAuthentication)
|
||||
|
|
Loading…
Reference in New Issue
Block a user