feat(api): Add authenticated Caddy management API
All checks were successful
Caddy Manager CI build / docker (push) Successful in 4m24s

This commit is contained in:
2026-07-26 18:34:02 +07:00
parent a94abca127
commit 9f7cb79bad
9 changed files with 430 additions and 0 deletions

View File

@@ -67,6 +67,11 @@ public class CaddyService(
};
}
if (request.FileName != CaddyGlobalConfigName && IsInvalidFileName(request.FileName))
{
return Failure("The configuration file name contains invalid characters");
}
var filePath = Path.Combine(Configurations.ConfigDir,
request.FileName == CaddyGlobalConfigName ? CaddyGlobalConfigName : $"{request.FileName}.caddy");
// if in the new mode, we would have to check if the file already exists
@@ -198,6 +203,12 @@ public class CaddyService(
foreach (var configurationName in configurationNames)
{
if (configurationName != CaddyGlobalConfigName && IsInvalidFileName(configurationName))
{
failed.Add(configurationName);
continue;
}
var filePath = Path.Combine(Configurations.ConfigDir,
configurationName == CaddyGlobalConfigName ? CaddyGlobalConfigName : $"{configurationName}.caddy");