Ejemplo n.º 1
0
 public static ApiResponse BadRequest(Context context)
 {
     return(new ApiResponse(
                id: context.Id,
                statusCode: 400,
                message: Displays.BadRequest(context: context)));
 }
Ejemplo n.º 2
0
        public async Task <HttpResponseMessage> ExecuteAuthorizationFilterAsync(
            HttpActionContext actionContext,
            CancellationToken cancellationToken,
            Func <Task <HttpResponseMessage> > continuation)
        {
            var stream = await actionContext?.Request?.Content?.ReadAsStreamAsync();

            if (stream == null)
            {
                return(await Task.FromResult(actionContext.Request.CreateResponse(
                                                 statusCode: HttpStatusCode.BadRequest,
                                                 value: new
                {
                    Message = Displays.BadRequest(
                        context: new Context(
                            sessionStatus: false,
                            sessionData: false,
                            item: false))
                },
                                                 mediaType: "application/json")));
            }
            var reader      = new System.IO.StreamReader(stream, System.Text.Encoding.UTF8);
            var requestData = await reader.ReadToEndAsync();

            stream.Position = 0;
            var context = new Context(
                sessionStatus: false,
                sessionData: false,
                item: false,
                apiRequestBody: requestData);

            if (!context.ContractSettings.AllowedIpAddress(context.UserHostAddress))
            {
                return(await Task.FromResult(actionContext.Request.CreateResponse(
                                                 statusCode: HttpStatusCode.Forbidden,
                                                 value: new
                {
                    Message = Displays.InvalidIpAddress(context)
                },
                                                 mediaType: "application/json")));
            }
            if (Parameters.Security.TokenCheck &&
                HttpContext.Current?.User?.Identity?.IsAuthenticated == true)
            {
                var data = await actionContext.Request?.Content?.ReadAsStringAsync();

                var api = data?.Deserialize <Api>();
                if (api?.Token != Authentications.Token())
                {
                    return(await Task.FromResult(actionContext.Request.CreateResponse(
                                                     statusCode: HttpStatusCode.BadRequest,
                                                     value: new
                    {
                        Message = Displays.BadRequest(context: context)
                    },
                                                     mediaType: "application/json")));
                }
            }
            return(await continuation());
        }
Ejemplo n.º 3
0
        public void OnAuthorization(AuthorizationFilterContext filterContext)
        {
            if (filterContext.HttpContext?.Request?.Body == null)
            {
                filterContext.HttpContext.Response.StatusCode = StatusCodes.Status400BadRequest;
                filterContext.Result = new JsonResult(
                    new
                {
                    Message = Displays.BadRequest(context: new ContextImplement(
                                                      sessionStatus: false,
                                                      sessionData: false,
                                                      item: false))
                });
                return;
            }
            filterContext.HttpContext.Request.EnableBuffering();
            var reader = new StreamReader(
                stream: filterContext.HttpContext.Request?.Body,
                encoding: Encoding.UTF8);
            var requestData = reader.ReadToEnd();

            filterContext.HttpContext.Request.Body.Position = 0;
            var context = new ContextImplement(
                sessionStatus: false,
                sessionData: false,
                item: false,
                setPermissions: false,
                apiRequestBody: requestData);

            if (!context.ContractSettings.AllowedIpAddress(context.UserHostAddress))
            {
                filterContext.HttpContext.Response.StatusCode = StatusCodes.Status403Forbidden;
                filterContext.Result = new JsonResult(
                    new
                {
                    Message = Displays.InvalidIpAddress(context: context)
                });
                return;
            }
            if (Parameters.Security.TokenCheck &&
                filterContext.HttpContext.User?.Identity?.IsAuthenticated == true)
            {
                var api = requestData?.Deserialize <Api>();
                if (api?.Token != context.Token())
                {
                    filterContext.HttpContext.Response.StatusCode = StatusCodes.Status400BadRequest;
                    filterContext.Result = new JsonResult(
                        new
                    {
                        Message = Displays.BadRequest(context: context)
                    });
                }
            }
        }
Ejemplo n.º 4
0
 public static Message BadRequest(params string[] data)
 {
     return(Get(Displays.BadRequest(data), "alert-error"));
 }
Ejemplo n.º 5
0
 public static ApiResponse BadRequest(Context context)
 {
     return(new ApiResponse(400, Displays.BadRequest(context: context)));
 }
Ejemplo n.º 6
0
 public static ApiResponse BadRequest()
 {
     return(new ApiResponse(400, Displays.BadRequest()));
 }