19 lines
634 B
C#
19 lines
634 B
C#
|
namespace TomatenMusic_Api.Auth.Helpers;
|
||
|
|
||
|
using Microsoft.AspNetCore.Mvc;
|
||
|
using Microsoft.AspNetCore.Mvc.Filters;
|
||
|
using TomatenMusic_Api.Auth.Entities;
|
||
|
|
||
|
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
|
||
|
public class AuthorizeAttribute : Attribute, IAuthorizationFilter
|
||
|
{
|
||
|
public void OnAuthorization(AuthorizationFilterContext context)
|
||
|
{
|
||
|
var user = (User)context.HttpContext.Items["User"];
|
||
|
if (user == null)
|
||
|
{
|
||
|
// not logged in
|
||
|
context.Result = new JsonResult(new { message = "Unauthorized" }) { StatusCode = StatusCodes.Status401Unauthorized };
|
||
|
}
|
||
|
}
|
||
|
}
|