secure getinstaller endpoint

This commit is contained in:
Oleksandr Bezdieniezhnykh
2025-09-23 15:37:50 +03:00
parent 3167df8bd7
commit b6dd20366e
5 changed files with 26 additions and 10 deletions
+18 -4
View File
@@ -210,18 +210,32 @@ app.MapPost("/resources/get/{dataFolder?}", //Need to have POST method for secur
}).RequireAuthorization()
.WithOpenApi(op => new OpenApiOperation(op){ Summary = "Gets encrypted by users Password and HardwareHash resources. POST method for secure password"});
app.MapGet("/resources/get-installer/{dataFolder?}",
async ([FromRoute]string? dataFolder, IAuthService authService, IResourcesService resourcesService, CancellationToken ct) =>
app.MapGet("/resources/get-installer",
async (IAuthService authService, IResourcesService resourcesService, CancellationToken ct) =>
{
var user = await authService.GetCurrentUser();
if (user == null)
throw new UnauthorizedAccessException();
var (name, stream) = resourcesService.GetInstaller(dataFolder);
var (name, stream) = resourcesService.GetInstaller(isStage: false);
if (stream == null)
throw new FileNotFoundException("Installer file was not found!");
return Results.File(stream, "application/octet-stream", name);
}).RequireAuthorization()
.WithOpenApi(op => new OpenApiOperation(op){ Summary = "Gets latest installer"});
.WithOpenApi(op => new OpenApiOperation(op) { Summary = "Gets latest installer" });
app.MapGet("/resources/get-installer/stage",
async (IAuthService authService, IResourcesService resourcesService, CancellationToken ct) =>
{
var user = await authService.GetCurrentUser();
if (user == null)
throw new UnauthorizedAccessException();
var (name, stream) = resourcesService.GetInstaller(isStage: true);
if (stream == null)
throw new FileNotFoundException("Installer file was not found!");
return Results.File(stream, "application/octet-stream", name);
}).RequireAuthorization()
.WithOpenApi(op => new OpenApiOperation(op) { Summary = "Gets latest installer" });
app.MapPost("/resources/check",
async (CheckResourceRequest request, IAuthService authService, IUserService userService) =>
+2 -1
View File
@@ -8,7 +8,8 @@
"AllowedHosts": "*",
"ResourcesConfig": {
"ResourcesFolder": "Content",
"SuiteInstallerFolder": "suite"
"SuiteInstallerFolder": "suite",
"SuiteStageInstallerFolder": "suite-stage"
},
"JwtConfig": {
"Issuer": "AzaionApi",