diff --git a/ServerManagement/Components/Pages/AddEditServer.razor b/ServerManagement/Components/Pages/AddEditServer.razor index 259bb76..d09132b 100644 --- a/ServerManagement/Components/Pages/AddEditServer.razor +++ b/ServerManagement/Components/Pages/AddEditServer.razor @@ -1,9 +1,13 @@ @page "/server/{id:int?}" +@using Microsoft.AspNetCore.Authorization + @inject NavigationManager NavigationManager @inject IJSRuntime JSRuntime @inject IServersEFCoreRepository ServersEFCoreRepository +@attribute [Authorize(Policy = "Administrator")] + diff --git a/ServerManagement/Components/Pages/Wizards/SetCityName.razor b/ServerManagement/Components/Pages/Wizards/SetCityName.razor index 35832ab..f172131 100644 --- a/ServerManagement/Components/Pages/Wizards/SetCityName.razor +++ b/ServerManagement/Components/Pages/Wizards/SetCityName.razor @@ -1,10 +1,13 @@ @page "/cityname" +@using Microsoft.AspNetCore.Authorization @using ServerManagement.StateStore @inject NavigationManager NavigationManager @inject ContainerStorage containerStorage +@attribute [Authorize] +

City Name


diff --git a/ServerManagement/Components/Pages/Wizards/SetServerName.razor b/ServerManagement/Components/Pages/Wizards/SetServerName.razor index 560bc92..6723bc3 100644 --- a/ServerManagement/Components/Pages/Wizards/SetServerName.razor +++ b/ServerManagement/Components/Pages/Wizards/SetServerName.razor @@ -1,10 +1,13 @@ @page "/servername" +@using Microsoft.AspNetCore.Authorization @using ServerManagement.StateStore @inject NavigationManager NavigationManager @inject ContainerStorage containerStorage +@attribute [Authorize] +

Server Name


diff --git a/ServerManagement/Components/Pages/Wizards/SetStatus.razor b/ServerManagement/Components/Pages/Wizards/SetStatus.razor index d3735fa..84f32a8 100644 --- a/ServerManagement/Components/Pages/Wizards/SetStatus.razor +++ b/ServerManagement/Components/Pages/Wizards/SetStatus.razor @@ -1,11 +1,14 @@ @page "/serverstatus" +@using Microsoft.AspNetCore.Authorization @using ServerManagement.StateStore @inject NavigationManager NavigationManager @inject ContainerStorage containerStorage @inject IServersEFCoreRepository ServersEFCoreRepository +@attribute [Authorize] +

Server Status


diff --git a/ServerManagement/Program.cs b/ServerManagement/Program.cs index 903be22..89632c4 100644 --- a/ServerManagement/Program.cs +++ b/ServerManagement/Program.cs @@ -55,6 +55,12 @@ builder.Services.AddAuthentication(options => }) .AddIdentityCookies(); +builder.Services.AddAuthorization(options => + { + options.AddPolicy("Administrator", policy => policy.RequireClaim("Role", "Admin")); + } +); + var connectionString = builder.Configuration.GetConnectionString("ServerManagement") ?? throw new InvalidOperationException("Connection string 'ServerManagement' not found."); builder.Services.AddDbContext(options => options.UseSqlite(connectionString));