@ -1,33 +1,37 @@ | |||||
namespace Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator.Filters | namespace Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator.Filters | ||||
{ | { | ||||
using Microsoft.AspNetCore.Authorization; | |||||
using Swashbuckle.AspNetCore.Swagger; | |||||
using Swashbuckle.AspNetCore.SwaggerGen; | |||||
using System.Collections.Generic; | |||||
using System.Linq; | |||||
using Microsoft.AspNetCore.Authorization; | |||||
using Swashbuckle.AspNetCore.Swagger; | |||||
using Swashbuckle.AspNetCore.SwaggerGen; | |||||
using System.Collections.Generic; | |||||
using System.Linq; | |||||
namespace Basket.API.Infrastructure.Filters | |||||
{ | |||||
public class AuthorizeCheckOperationFilter : IOperationFilter | |||||
{ | |||||
public void Apply(Operation operation, OperationFilterContext context) | |||||
{ | |||||
// Check for authorize attribute | |||||
var hasAuthorize = context.ApiDescription.ControllerAttributes().OfType<AuthorizeAttribute>().Any() || | |||||
context.ApiDescription.ActionAttributes().OfType<AuthorizeAttribute>().Any(); | |||||
namespace Basket.API.Infrastructure.Filters | |||||
{ | |||||
public class AuthorizeCheckOperationFilter : IOperationFilter | |||||
{ | |||||
public void Apply(Operation operation, OperationFilterContext context) | |||||
{ | |||||
// Check for authorize attribute | |||||
if (hasAuthorize) | |||||
{ | |||||
operation.Responses.Add("401", new Response { Description = "Unauthorized" }); | |||||
operation.Responses.Add("403", new Response { Description = "Forbidden" }); | |||||
var hasAuthorize = context.MethodInfo.DeclaringType.GetCustomAttributes(true) | |||||
.Union(context.MethodInfo.GetCustomAttributes(true)) | |||||
.OfType<AuthorizeAttribute>().Any(); | |||||
operation.Security = new List<IDictionary<string, IEnumerable<string>>>(); | |||||
operation.Security.Add(new Dictionary<string, IEnumerable<string>> | |||||
{ | |||||
{ "oauth2", new [] { "Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator" } } | |||||
}); | |||||
} | |||||
} | |||||
} | |||||
} | |||||
if (hasAuthorize) | |||||
{ | |||||
operation.Responses.Add("401", new Response { Description = "Unauthorized" }); | |||||
operation.Responses.Add("403", new Response { Description = "Forbidden" }); | |||||
operation.Security = new List<IDictionary<string, IEnumerable<string>>> | |||||
{ | |||||
new Dictionary<string, IEnumerable<string>> | |||||
{ | |||||
{ "oauth2", new [] { "Microsoft.eShopOnContainers.Mobile.Shopping.HttpAggregator" } } | |||||
} | |||||
}; | |||||
} | |||||
} | |||||
} | |||||
} | |||||
} | } |
@ -1,33 +1,37 @@ | |||||
namespace Microsoft.eShopOnContainers.Web.Shopping.HttpAggregator.Filters | namespace Microsoft.eShopOnContainers.Web.Shopping.HttpAggregator.Filters | ||||
{ | { | ||||
using Microsoft.AspNetCore.Authorization; | |||||
using Swashbuckle.AspNetCore.Swagger; | |||||
using Swashbuckle.AspNetCore.SwaggerGen; | |||||
using System.Collections.Generic; | |||||
using System.Linq; | |||||
using Microsoft.AspNetCore.Authorization; | |||||
using Swashbuckle.AspNetCore.Swagger; | |||||
using Swashbuckle.AspNetCore.SwaggerGen; | |||||
using System.Collections.Generic; | |||||
using System.Linq; | |||||
namespace Basket.API.Infrastructure.Filters | |||||
{ | |||||
public class AuthorizeCheckOperationFilter : IOperationFilter | |||||
{ | |||||
public void Apply(Operation operation, OperationFilterContext context) | |||||
{ | |||||
// Check for authorize attribute | |||||
var hasAuthorize = context.ApiDescription.ControllerAttributes().OfType<AuthorizeAttribute>().Any() || | |||||
context.ApiDescription.ActionAttributes().OfType<AuthorizeAttribute>().Any(); | |||||
namespace Basket.API.Infrastructure.Filters | |||||
{ | |||||
public class AuthorizeCheckOperationFilter : IOperationFilter | |||||
{ | |||||
public void Apply(Operation operation, OperationFilterContext context) | |||||
{ | |||||
// Check for authorize attribute | |||||
if (hasAuthorize) | |||||
{ | |||||
operation.Responses.Add("401", new Response { Description = "Unauthorized" }); | |||||
operation.Responses.Add("403", new Response { Description = "Forbidden" }); | |||||
var hasAuthorize = context.MethodInfo.DeclaringType.GetCustomAttributes(true) | |||||
.Union(context.MethodInfo.GetCustomAttributes(true)) | |||||
.OfType<AuthorizeAttribute>().Any(); | |||||
operation.Security = new List<IDictionary<string, IEnumerable<string>>>(); | |||||
operation.Security.Add(new Dictionary<string, IEnumerable<string>> | |||||
{ | |||||
{ "oauth2", new [] { "Microsoft.eShopOnContainers.Web.Shopping.HttpAggregator" } } | |||||
}); | |||||
} | |||||
} | |||||
} | |||||
} | |||||
if (hasAuthorize) | |||||
{ | |||||
operation.Responses.Add("401", new Response { Description = "Unauthorized" }); | |||||
operation.Responses.Add("403", new Response { Description = "Forbidden" }); | |||||
operation.Security = new List<IDictionary<string, IEnumerable<string>>> | |||||
{ | |||||
new Dictionary<string, IEnumerable<string>> | |||||
{ | |||||
{ "oauth2", new [] { "Microsoft.eShopOnContainers.Web.Shopping.HttpAggregator" } } | |||||
} | |||||
}; | |||||
} | |||||
} | |||||
} | |||||
} | |||||
} | } |
@ -1,32 +1,34 @@ | |||||
using Microsoft.AspNetCore.Authorization; | using Microsoft.AspNetCore.Authorization; | ||||
using Swashbuckle.AspNetCore.Swagger; | using Swashbuckle.AspNetCore.Swagger; | ||||
using Swashbuckle.AspNetCore.SwaggerGen; | using Swashbuckle.AspNetCore.SwaggerGen; | ||||
using System; | |||||
using System.Collections.Generic; | using System.Collections.Generic; | ||||
using System.Linq; | using System.Linq; | ||||
using System.Threading.Tasks; | |||||
namespace Ordering.API.Infrastructure.Filters | namespace Ordering.API.Infrastructure.Filters | ||||
{ | { | ||||
public class AuthorizeCheckOperationFilter : IOperationFilter | |||||
{ | |||||
public void Apply(Operation operation, OperationFilterContext context) | |||||
{ | |||||
// Check for authorize attribute | |||||
var hasAuthorize = context.ApiDescription.ControllerAttributes().OfType<AuthorizeAttribute>().Any() || | |||||
context.ApiDescription.ActionAttributes().OfType<AuthorizeAttribute>().Any(); | |||||
public class AuthorizeCheckOperationFilter : IOperationFilter | |||||
{ | |||||
public void Apply(Operation operation, OperationFilterContext context) | |||||
{ | |||||
// Check for authorize attribute | |||||
if (hasAuthorize) | |||||
{ | |||||
operation.Responses.Add("401", new Response { Description = "Unauthorized" }); | |||||
operation.Responses.Add("403", new Response { Description = "Forbidden" }); | |||||
var hasAuthorize = context.MethodInfo.DeclaringType.GetCustomAttributes(true) | |||||
.Union(context.MethodInfo.GetCustomAttributes(true)) | |||||
.OfType<AuthorizeAttribute>().Any(); | |||||
operation.Security = new List<IDictionary<string, IEnumerable<string>>>(); | |||||
operation.Security.Add(new Dictionary<string, IEnumerable<string>> | |||||
{ | |||||
{ "oauth2", new [] { "orderingapi" } } | |||||
}); | |||||
} | |||||
} | |||||
} | |||||
if (hasAuthorize) | |||||
{ | |||||
operation.Responses.Add("401", new Response { Description = "Unauthorized" }); | |||||
operation.Responses.Add("403", new Response { Description = "Forbidden" }); | |||||
operation.Security = new List<IDictionary<string, IEnumerable<string>>> | |||||
{ | |||||
new Dictionary<string, IEnumerable<string>> | |||||
{ | |||||
{ "oauth2", new [] { "orderingapi" } } | |||||
} | |||||
}; | |||||
} | |||||
} | |||||
} | |||||
} | } |
@ -1,32 +1,34 @@ | |||||
using Microsoft.AspNetCore.Authorization; | using Microsoft.AspNetCore.Authorization; | ||||
using Swashbuckle.AspNetCore.Swagger; | using Swashbuckle.AspNetCore.Swagger; | ||||
using Swashbuckle.AspNetCore.SwaggerGen; | using Swashbuckle.AspNetCore.SwaggerGen; | ||||
using System; | |||||
using System.Collections.Generic; | using System.Collections.Generic; | ||||
using System.Linq; | using System.Linq; | ||||
using System.Threading.Tasks; | |||||
namespace Webhooks.API.Infrastructure | namespace Webhooks.API.Infrastructure | ||||
{ | { | ||||
public class AuthorizeCheckOperationFilter : IOperationFilter | |||||
{ | |||||
public void Apply(Operation operation, OperationFilterContext context) | |||||
{ | |||||
// Check for authorize attribute | |||||
var hasAuthorize = context.ApiDescription.ControllerAttributes().OfType<AuthorizeAttribute>().Any() || | |||||
context.ApiDescription.ActionAttributes().OfType<AuthorizeAttribute>().Any(); | |||||
public class AuthorizeCheckOperationFilter : IOperationFilter | |||||
{ | |||||
public void Apply(Operation operation, OperationFilterContext context) | |||||
{ | |||||
// Check for authorize attribute | |||||
if (hasAuthorize) | |||||
{ | |||||
operation.Responses.Add("401", new Response { Description = "Unauthorized" }); | |||||
operation.Responses.Add("403", new Response { Description = "Forbidden" }); | |||||
var hasAuthorize = context.MethodInfo.DeclaringType.GetCustomAttributes(true) | |||||
.Union(context.MethodInfo.GetCustomAttributes(true)) | |||||
.OfType<AuthorizeAttribute>().Any(); | |||||
operation.Security = new List<IDictionary<string, IEnumerable<string>>>(); | |||||
operation.Security.Add(new Dictionary<string, IEnumerable<string>> | |||||
{ | |||||
{ "oauth2", new [] { "webhooksapi" } } | |||||
}); | |||||
} | |||||
} | |||||
} | |||||
if (hasAuthorize) | |||||
{ | |||||
operation.Responses.Add("401", new Response { Description = "Unauthorized" }); | |||||
operation.Responses.Add("403", new Response { Description = "Forbidden" }); | |||||
operation.Security = new List<IDictionary<string, IEnumerable<string>>> | |||||
{ | |||||
new Dictionary<string, IEnumerable<string>> | |||||
{ | |||||
{ "oauth2", new [] { "webhooksapi" } } | |||||
} | |||||
}; | |||||
} | |||||
} | |||||
} | |||||
} | } |