1
0
mirror of https://github.com/stonith404/pingvin-share.git synced 2024-11-15 03:50:11 +01:00

feat: add 'secureCookies' configuration variable to explicitly set the secure flag and prevent confusion

This commit is contained in:
Elias Schneider 2024-11-14 17:31:17 +01:00
parent 77eef187b7
commit 4ce64206be
No known key found for this signature in database
GPG Key ID: 07E623B294202B6C
5 changed files with 10 additions and 3 deletions

View File

@ -20,6 +20,10 @@ const configVariables: ConfigVariables = {
defaultValue: "http://localhost:3000",
secret: false,
},
secureCookies: {
type: "boolean",
defaultValue: "false",
},
showHomePage: {
type: "boolean",
defaultValue: "true",

View File

@ -176,7 +176,7 @@ export class AuthController {
request.cookies.access_token,
);
const isSecure = this.config.get("general.appUrl").startsWith("https");
const isSecure = this.config.get("general.secureCookies");
response.cookie("access_token", "", {
maxAge: -1,
secure: isSecure,

View File

@ -334,7 +334,7 @@ export class AuthService {
refreshToken?: string,
accessToken?: string,
) {
const isSecure = this.config.get("general.appUrl").startsWith("https");
const isSecure = this.config.get("general.secureCookies");
if (accessToken)
response.cookie("access_token", accessToken, {
sameSite: "lax",

View File

@ -53,7 +53,7 @@ export class UserController {
@GetUser() user: User,
@Res({ passthrough: true }) response: Response,
) {
const isSecure = this.config.get("general.appUrl").startsWith("https");
const isSecure = this.config.get("general.secureCookies");
response.cookie("access_token", "accessToken", {
maxAge: -1,

View File

@ -410,6 +410,9 @@ export default {
"admin.config.general.app-url": "App URL",
"admin.config.general.app-url.description":
"On which URL Pingvin Share is available",
"admin.config.general.secure-cookies": "Secure cookies",
"admin.config.general.secure-cookies.description":
"Whether to set the secure flag on cookies. If enabled, the site will not function when accessed over HTTP.",
"admin.config.general.show-home-page": "Show home page",
"admin.config.general.show-home-page.description":
"Whether to show the home page",