Files
raven/.vscode/launch.json
John Cardinal a843bd3132 case 4711 - JWT signing key generated by the server; AYANOVA_JWT_SECRET removed
The LAN/IIS and Linux templates shipped a placeholder secret printed in the
manual, and installs that kept it signed logins with a public key; any setting
also invited short or reused values (security review F1). The setting is now
ignored (one warning at boot if still present): the server generates a key once
(48 random bytes) into jwt-signing.key in the data folder (beside the app if
there is none; owner-only on Linux) and reuses it, so sign-ins also survive a
restart where the server used to make a new key each boot (standalone, Linux
desktop). If the file cannot be used, a temporary key is used for that run.

Templates and dev launch configs drop the setting; manual updated (key page
rewritten, setting steps removed from install pages); changelog line.

Checked locally: token forged with the old placeholder 401; key file created
and reused after restart (old token 200); auth and 2FA tests pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 12:01:08 -07:00

136 lines
7.3 KiB
JSON

{
// Use IntelliSense to find out which attributes exist for C# debugging
// Use hover for the description of the existing attributes
// For further information visit https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md
"version": "0.2.0",
"configurations": [
/*
██████╗ ███████╗██████╗ ██████╗ ███████╗████████╗██╗ ██╗ █████╗ ██╗
██╔══██╗██╔════╝██╔══██╗██╔══██╗██╔════╝╚══██╔══╝██║ ██║██╔══██╗██║
██████╔╝█████╗ ██████╔╝██████╔╝█████╗ ██║ ██║ ██║███████║██║
██╔═══╝ ██╔══╝ ██╔══██╗██╔═══╝ ██╔══╝ ██║ ██║ ██║██╔══██║██║
██║ ███████╗██║ ██║██║ ███████╗ ██║ ╚██████╔╝██║ ██║███████╗
╚═╝ ╚══════╝╚═╝ ╚═╝╚═╝ ╚══════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝
*/
{
"name": ".NET Core Launch (web) PERPETUAL BUILD",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build debug",
// If you have changed target frameworks, make sure to update the program path.
//#### THIS MEANS YOU JOHNNY! If the debugger fails this is the issue
"program": "${workspaceFolder}/server/AyaNova/bin/Debug/net10.0/AyaNova.dll",
"args": [],
"cwd": "${workspaceFolder}/server/AyaNova",
"stopAtEntry": false,
"internalConsoleOptions": "openOnSessionStart",
// // Enable launching a web browser when ASP.NET Core starts. For more information: https://aka.ms/VSCode-CS-LaunchJson-WebBrowser
// //this needs to be tweaked probably
// //https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md#starting-a-web-browser
// "serverReadyAction": {
// "action": "openExternally",
// "pattern": "^\\s*Now listening on:\\s+(https?://\\S+)"
// },
// "launchBrowser": {
// "enabled": true,
// "args": "${auto-detect-url}/api/v8/",
// "windows": {
// "command": "cmd.exe",
// "args": "/C start http://localhost:7575/api/v8/"
// },
// "osx": {
// "command": "open"
// },
// "linux": {
// "command": "xdg-open"
// }
// },
"env": {
//############ PERPETUAL BLOCK ######################
// "ASPNETCORE_ENVIRONMENT": "Development",
"AYANOVA_LOG_LEVEL": "Info",
//"AYANOVA_LOG_LEVEL": "Debug",
//"AYANOVA_LOG_LEVEL": "Trace",
"AYANOVA_DEFAULT_TRANSLATION": "en",
"AYANOVA_DB_CONNECTION": "Server=localhost;Username=postgres;Password=raven;Database=AyaNova;CommandTimeout=300;",
"AYANOVA_DATA_PATH": "c:\\temp\\ravendata",
"AYANOVA_USE_URLS": "http://*:7575;",
//"AYANOVA_PERMANENTLY_ERASE_DATABASE":"true",
//"AYANOVA_REMOVE_LICENSE_FROM_DB":"true",
"AYANOVA_REPORT_RENDERING_TIMEOUT":"60",
// "AYANOVA_REPORT_RENDER_API_URL_OVERRIDE": "http://localhost:7575",
"AYANOVA_BACKUP_PG_DUMP_PATH": "C:\\data\\code\\postgres_15\\bin"
},
"sourceFileMap": {
"/Views": "${workspaceFolder}/Views"
}
},
/*
███████╗██╗ ██╗██████╗ ███████╗ ██████╗██████╗ ██╗██████╗ ████████╗██╗ ██████╗ ███╗ ██╗
██╔════╝██║ ██║██╔══██╗██╔════╝██╔════╝██╔══██╗██║██╔══██╗╚══██╔══╝██║██╔═══██╗████╗ ██║
███████╗██║ ██║██████╔╝███████╗██║ ██████╔╝██║██████╔╝ ██║ ██║██║ ██║██╔██╗ ██║
╚════██║██║ ██║██╔══██╗╚════██║██║ ██╔══██╗██║██╔═══╝ ██║ ██║██║ ██║██║╚██╗██║
███████║╚██████╔╝██████╔╝███████║╚██████╗██║ ██║██║██║ ██║ ██║╚██████╔╝██║ ╚████║
╚══════╝ ╚═════╝ ╚═════╝ ╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝
*/
{
"name": ".NET Core Launch (web) SUBSCRIPTION BUILD",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build debug subscription",
// If you have changed target frameworks, make sure to update the program path.
//#### THIS MEANS YOU JOHNNY! If the debugger fails this is the issue
"program": "${workspaceFolder}/server/AyaNova/bin/Debug/net10.0/AyaNova.dll",
"args": [],
"cwd": "${workspaceFolder}/server/AyaNova",
"stopAtEntry": false,
"internalConsoleOptions": "openOnSessionStart",
// Enable launching a web browser when ASP.NET Core starts. For more information: https://aka.ms/VSCode-CS-LaunchJson-WebBrowser
//this needs to be tweaked probably
//https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md#starting-a-web-browser
// "serverReadyAction": {
// "action": "openExternally",
// "pattern": "^\\s*Now listening on:\\s+(https?://\\S+)"
// },
"env": {
//############ SUBSCRIPTION MODE BLOCK ######################
// "ASPNETCORE_ENVIRONMENT": "Development",
//"AYANOVA_REPORT_RENDERING_TIMEOUT":"1",
"AYANOVA_LOG_LEVEL": "Info",
//"AYANOVA_LOG_LEVEL": "Debug",
//"AYANOVA_LOG_LEVEL": "Trace",
"AYANOVA_DEFAULT_TRANSLATION": "en",
"AYANOVA_DB_CONNECTION": "Server=localhost;Username=postgres;Password=raven;Database=AyaNova;CommandTimeout=300;",
"AYANOVA_DATA_PATH": "c:\\temp\\ravendata",
"AYANOVA_USE_URLS": "http://*:7575;",
//"AYANOVA_PERMANENTLY_ERASE_DATABASE":"true",
//"AYANOVA_REMOVE_LICENSE_FROM_DB":"true",
//"AYANOVA_SET_SUPERUSER_PW": "l3tm3in",
"AYANOVA_BACKUP_PG_DUMP_PATH": "C:\\data\\code\\postgres_15\\bin"
},
"sourceFileMap": {
"/Views": "${workspaceFolder}/Views"
}
},
{
"name": ".NET Core Attach",
"type": "coreclr",
"request": "attach",
"processId": "${command:pickProcess}"
}
]
}