Update TelegramEndpoints to require admin role for access
Modified the TelegramEndpoints to enforce authorization by requiring the "admin" role for the admin group. This change enhances security by ensuring that only users with the appropriate role can access Telegram settings and related functionalities.
This commit is contained in:
@@ -7,6 +7,7 @@ using TeleWave.Application.Notifications.Link;
|
|||||||
using TeleWave.Application.Notifications.Settings;
|
using TeleWave.Application.Notifications.Settings;
|
||||||
using TeleWave.Application.Notifications.Subscribers;
|
using TeleWave.Application.Notifications.Subscribers;
|
||||||
using TeleWave.Domain.Notifications;
|
using TeleWave.Domain.Notifications;
|
||||||
|
using TeleWave.Infrastructure.Identity;
|
||||||
|
|
||||||
namespace TeleWave.Api.Endpoints;
|
namespace TeleWave.Api.Endpoints;
|
||||||
|
|
||||||
@@ -20,7 +21,8 @@ public static class TelegramEndpoints
|
|||||||
|
|
||||||
public static IEndpointRouteBuilder MapTelegramEndpoints(this IEndpointRouteBuilder app)
|
public static IEndpointRouteBuilder MapTelegramEndpoints(this IEndpointRouteBuilder app)
|
||||||
{
|
{
|
||||||
var admin = app.MapGroup("/api/admin/telegram").RequireAuthorization("admin");
|
var admin = app.MapGroup("/api/admin/telegram")
|
||||||
|
.RequireAuthorization(policy => policy.RequireRole(RoleNames.Admin));
|
||||||
|
|
||||||
admin.MapGet("/settings", GetSettings).Produces<TelegramSettingsDto>();
|
admin.MapGet("/settings", GetSettings).Produces<TelegramSettingsDto>();
|
||||||
admin.MapPut("/settings", UpdateSettings).Produces<TelegramSettingsDto>();
|
admin.MapPut("/settings", UpdateSettings).Produces<TelegramSettingsDto>();
|
||||||
|
|||||||
Reference in New Issue
Block a user