diff options
Diffstat (limited to 'Timeline/Filters')
-rw-r--r-- | Timeline/Filters/Header.cs | 2 | ||||
-rw-r--r-- | Timeline/Filters/Timeline.cs | 1 | ||||
-rw-r--r-- | Timeline/Filters/User.cs | 68 |
3 files changed, 0 insertions, 71 deletions
diff --git a/Timeline/Filters/Header.cs b/Timeline/Filters/Header.cs index 843a619d..0db11faf 100644 --- a/Timeline/Filters/Header.cs +++ b/Timeline/Filters/Header.cs @@ -6,7 +6,6 @@ namespace Timeline.Filters {
public class RequireContentTypeAttribute : ActionFilterAttribute
{
- [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1062:Validate arguments of public methods")]
public override void OnActionExecuting(ActionExecutingContext context)
{
if (context.HttpContext.Request.ContentType == null)
@@ -31,7 +30,6 @@ namespace Timeline.Filters public bool RequireNonZero { get; set; }
- [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1062:Validate arguments of public methods")]
public override void OnActionExecuting(ActionExecutingContext context)
{
if (context.HttpContext.Request.ContentLength == null)
diff --git a/Timeline/Filters/Timeline.cs b/Timeline/Filters/Timeline.cs index bc142db0..729dbec7 100644 --- a/Timeline/Filters/Timeline.cs +++ b/Timeline/Filters/Timeline.cs @@ -7,7 +7,6 @@ namespace Timeline.Filters {
public class CatchTimelineNotExistExceptionAttribute : ExceptionFilterAttribute
{
- [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1062:Validate arguments of public methods")]
public override void OnException(ExceptionContext context)
{
if (context.Exception is TimelineNotExistException e)
diff --git a/Timeline/Filters/User.cs b/Timeline/Filters/User.cs deleted file mode 100644 index 12ed6155..00000000 --- a/Timeline/Filters/User.cs +++ /dev/null @@ -1,68 +0,0 @@ -using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using Microsoft.AspNetCore.Mvc.Filters;
-using Microsoft.Extensions.DependencyInjection;
-using Microsoft.Extensions.Logging;
-using System;
-using Timeline.Auth;
-using Timeline.Models.Http;
-using Timeline.Services;
-using static Timeline.Resources.Filters;
-
-namespace Timeline.Filters
-{
- public class SelfOrAdminAttribute : ActionFilterAttribute
- {
- [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1062:Validate arguments of public methods")]
- public override void OnActionExecuting(ActionExecutingContext context)
- {
- var logger = context.HttpContext.RequestServices.GetRequiredService<ILogger<SelfOrAdminAttribute>>();
-
- var user = context.HttpContext.User;
-
- if (user == null)
- {
- logger.LogError(LogSelfOrAdminNoUser);
- return;
- }
-
- if (context.ModelState.TryGetValue("username", out var model))
- {
- if (model.RawValue is string username)
- {
- if (!user.IsAdministrator() && user.Identity.Name != username)
- {
- context.Result = new ObjectResult(ErrorResponse.Common.Forbid())
- { StatusCode = StatusCodes.Status403Forbidden };
- }
- }
- else
- {
- logger.LogError(LogSelfOrAdminUsernameNotString);
- }
- }
- else
- {
- logger.LogError(LogSelfOrAdminNoUsername);
- }
- }
- }
-
- [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = true, Inherited = true)]
- public class CatchUserNotExistExceptionAttribute : ExceptionFilterAttribute
- {
- [System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1062:Validate arguments of public methods", Justification = "ASP.Net already checked.")]
- public override void OnException(ExceptionContext context)
- {
- if (context.Exception is UserNotExistException)
- {
- var body = ErrorResponse.UserCommon.NotExist();
-
- if (context.HttpContext.Request.Method == "GET")
- context.Result = new NotFoundObjectResult(body);
- else
- context.Result = new BadRequestObjectResult(body);
- }
- }
- }
-}
|