diff --git a/WorkFlow.API/Controllers/AuthController.cs b/WorkFlow.API/Controllers/AuthController.cs index 490540d..56911cd 100644 --- a/WorkFlow.API/Controllers/AuthController.cs +++ b/WorkFlow.API/Controllers/AuthController.cs @@ -10,9 +10,11 @@ using DigitalData.Core.Abstractions.Application; using Microsoft.Extensions.Localization; using DigitalData.Core.DTO; using WorkFlow.API.Models; +using WorkFlow.API.Attributes; namespace WorkFlow.API.Controllers { + [APIKeyAuth] [Route("api/[controller]")] [ApiController] public class AuthController(IUserService userService, IGroupOfUserService gouService, IDirectorySearchService directorySearchService, IStringLocalizer localizer, ILogger logger) : ControllerBase diff --git a/WorkFlow.API/Controllers/ConfigController.cs b/WorkFlow.API/Controllers/ConfigController.cs index 63fc111..4ae5d47 100644 --- a/WorkFlow.API/Controllers/ConfigController.cs +++ b/WorkFlow.API/Controllers/ConfigController.cs @@ -1,12 +1,14 @@ using DigitalData.Core.API; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using WorkFlow.API.Attributes; using WorkFlow.Application.Contracts; using WorkFlow.Application.DTO.Config; using WorkFlow.Domain.Entities; namespace WorkFlow.API.Controllers { + [APIKeyAuth] [Route("api/[controller]")] [ApiController] [Authorize] diff --git a/WorkFlow.API/Controllers/ControllerExtensions.cs b/WorkFlow.API/Controllers/ControllerExtensions.cs index bf23c09..ddabb7e 100644 --- a/WorkFlow.API/Controllers/ControllerExtensions.cs +++ b/WorkFlow.API/Controllers/ControllerExtensions.cs @@ -1,8 +1,10 @@ using Microsoft.AspNetCore.Mvc; using System.Security.Claims; +using WorkFlow.API.Attributes; namespace WorkFlow.API.Controllers { + [APIKeyAuth] public static class ControllerExtensions { public static bool TryGetUserId(this ControllerBase controller, out int? id) diff --git a/WorkFlow.API/Controllers/ProfileController.cs b/WorkFlow.API/Controllers/ProfileController.cs index f015ec7..7d8aae6 100644 --- a/WorkFlow.API/Controllers/ProfileController.cs +++ b/WorkFlow.API/Controllers/ProfileController.cs @@ -1,12 +1,14 @@ using DigitalData.Core.API; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using WorkFlow.API.Attributes; using WorkFlow.Application.Contracts; using WorkFlow.Application.DTO.Profile; using WorkFlow.Domain.Entities; namespace WorkFlow.API.Controllers { + [APIKeyAuth] [Route("api/[controller]")] [ApiController] [Authorize] diff --git a/WorkFlow.API/Controllers/ProfileControlsTFController.cs b/WorkFlow.API/Controllers/ProfileControlsTFController.cs index 036269b..b4db649 100644 --- a/WorkFlow.API/Controllers/ProfileControlsTFController.cs +++ b/WorkFlow.API/Controllers/ProfileControlsTFController.cs @@ -2,12 +2,14 @@ using DigitalData.Core.DTO; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using WorkFlow.API.Attributes; using WorkFlow.Application.Contracts; using WorkFlow.Application.DTO.ProfileControlsTF; using WorkFlow.Domain.Entities; namespace WorkFlow.API.Controllers { + [APIKeyAuth] [Route("api/[controller]")] [ApiController] [Authorize] diff --git a/WorkFlow.API/Controllers/ProfileObjStateController.cs b/WorkFlow.API/Controllers/ProfileObjStateController.cs index 668fc76..c5c63fd 100644 --- a/WorkFlow.API/Controllers/ProfileObjStateController.cs +++ b/WorkFlow.API/Controllers/ProfileObjStateController.cs @@ -2,12 +2,14 @@ using DigitalData.Core.DTO; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using WorkFlow.API.Attributes; using WorkFlow.Application.Contracts; using WorkFlow.Application.DTO.ProfileObjState; using WorkFlow.Domain.Entities; namespace WorkFlow.API.Controllers { + [APIKeyAuth] [Route("api/[controller]")] [ApiController] [Authorize] diff --git a/WorkFlow.API/Controllers/StateController.cs b/WorkFlow.API/Controllers/StateController.cs index cf14846..a63199d 100644 --- a/WorkFlow.API/Controllers/StateController.cs +++ b/WorkFlow.API/Controllers/StateController.cs @@ -1,12 +1,14 @@ using DigitalData.Core.API; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using WorkFlow.API.Attributes; using WorkFlow.Application.Contracts; using WorkFlow.Application.DTO.State; using WorkFlow.Domain.Entities; namespace WorkFlow.API.Controllers { + [APIKeyAuth] [Route("api/[controller]")] [ApiController] [Authorize] diff --git a/WorkFlow.API/Controllers/UserController.cs b/WorkFlow.API/Controllers/UserController.cs index e01c036..9944aaa 100644 --- a/WorkFlow.API/Controllers/UserController.cs +++ b/WorkFlow.API/Controllers/UserController.cs @@ -2,9 +2,11 @@ using DigitalData.UserManager.Application.Contracts; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using WorkFlow.API.Attributes; namespace WorkFlow.API.Controllers { + [APIKeyAuth] [Route("api/[controller]")] [ApiController] [Authorize] diff --git a/WorkFlow.API/Filters/APIKeyAuthHeaderOpFilter.cs b/WorkFlow.API/Filters/APIKeyAuthHeaderOpFilter.cs index f9a6036..ae1e670 100644 --- a/WorkFlow.API/Filters/APIKeyAuthHeaderOpFilter.cs +++ b/WorkFlow.API/Filters/APIKeyAuthHeaderOpFilter.cs @@ -15,7 +15,12 @@ namespace WorkFlow.API.Filters { Name = apiKeyAuthOptions.HeaderName, In = ParameterLocation.Header, - Required = true + Required = true, + AllowEmptyValue = false, + Schema = new OpenApiSchema + { + Type = "string" + } }; if(apiKeyAuthOptions.SwaggerDescription is not null)