aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAKP <tom@tdpain.net>2022-04-05 21:28:54 +0100
committerAKP <tom@tdpain.net>2022-04-05 21:28:54 +0100
commit6a5fdebcbf08acbb964c8364faa9d31b8c65dcd9 (patch)
tree2bfdb998cf46abfdd2bed96531da8c5e38c8ac3d
parent75606aeefde6f51b5f18d311d96874d9190f705f (diff)
Add option to disable secure cookies
-rw-r--r--walrss/internal/http/auth.go2
-rw-r--r--walrss/internal/state/state.go11
-rw-r--r--walrss/main.go2
3 files changed, 13 insertions, 2 deletions
diff --git a/walrss/internal/http/auth.go b/walrss/internal/http/auth.go
index e394808..a9ceca6 100644
--- a/walrss/internal/http/auth.go
+++ b/walrss/internal/http/auth.go
@@ -111,7 +111,7 @@ func (s *Server) authSignIn(ctx *fiber.Ctx) error {
Name: sessionCookieKey,
Value: token,
Expires: time.Now().UTC().Add(sessionDuration),
- Secure: !s.state.Config.Debug,
+ Secure: s.state.Config.EnableSecureCookies(),
HTTPOnly: true,
})
diff --git a/walrss/internal/state/state.go b/walrss/internal/state/state.go
index 74f8bd6..087930f 100644
--- a/walrss/internal/state/state.go
+++ b/walrss/internal/state/state.go
@@ -33,7 +33,8 @@ type Config struct {
ExternalURL string `fig:"externalURL" validate:"required"`
}
Platform struct {
- DisableRegistration bool `fig:"disableRegistration"`
+ DisableRegistration bool `fig:"disableRegistration"`
+ DisableSecureCookies bool `fig:"disableSecureCookies"`
}
Debug bool `fig:"debug"`
}
@@ -66,3 +67,11 @@ func LoadConfig() (*Config, error) {
func (cfg *Config) GetHTTPAddress() string {
return fmt.Sprintf("%s:%d", cfg.Server.Host, cfg.Server.Port)
}
+
+func (cfg *Config) EnableSecureCookies() bool {
+ enableSecureCookies := true
+ if !cfg.Debug {
+ enableSecureCookies = !cfg.Platform.DisableSecureCookies
+ }
+ return enableSecureCookies
+}
diff --git a/walrss/main.go b/walrss/main.go
index 2bbf6d7..a61ca51 100644
--- a/walrss/main.go
+++ b/walrss/main.go
@@ -37,6 +37,8 @@ func run() error {
rss.StartWatcher(st)
+ log.Info().Msg("starting server on " + st.Config.GetHTTPAddress())
+
return server.Run()
}