Afternoon! So I'm working on the config file to configure OIDC with Okta and I'm noticing anomales between the formatting in the in-use config file, compared to the example files and with what's published in the docs.
So first question: The config.yaml the application created is using single quotes for everything, but the examples use double quotes.. and in the example the challenge section's keys aren't quoted.. only the environment values. Which is correct?
And second, Speaking of OIDC, having the following in my new config file:
'auth':
'oidc':
# the first three fields are specified by your OIDC provider:
# issuer URL might be very picky (e.g., requiring the trailing forward slash)
issuer_url: 'https://company.okta.com/'
client_id: '<client_id>'
client_secret: '<secret_value_here>'
# the redirect url must be the fqdn of your BACKEND certwarden server, and
# the exact path specified here:
api_redirect_uri: 'https://fqdn/certwarden/api/v1/app/auth/oidc/callback'
'local':
'enabled': true
With this the application starts correctly but I do not get an OIDC button on the login page. I don;t see anything in the logs aside from:
{"level":"error","ts":"2025-06-23T20:34:09.513Z","caller":"app/handlers_logs.go:68","msg":"invalid character 'e' in literal true (expecting 'r')","stacktrace":"certwarden-backend/pkg/domain/app.(*Application).viewCurrentLogHandler\n\t/home/runner/work/certwarden/certwarden/pkg/domain/app/handlers_logs.go:68\ncertwarden-backend/pkg/domain/app.(*router).handleAPIRouteSecure.middlewareApplyAuthJWT.func1\n\t/home/runner/work/certwarden/certwarden/pkg/domain/app/middleware_auth_jwt.go:25\ncertwarden-backend/pkg/domain/app.(*router).handleAPIRouteSecure.middlewareApplyReturnValHandling.func2\n\t/home/runner/work/certwarden/certwarden/pkg/domain/app/middleware_returnval_handling.go:59\nnet/http.HandlerFunc.ServeHTTP\n\t/opt/hostedtoolcache/go/1.24.2/x64/src/net/http/server.go:2294\ngithub.com/julienschmidt/httprouter.(*Router).HandlerFunc.(*Router).Handler.func1\n\t/home/runner/go/pkg/mod/github.com/julienschmidt/httprouter@v1.3.0/router.go:275\ngithub.com/julienschmidt/httprouter.(*Router).ServeHTTP\n\t/home/runner/go/pkg/mod/github.com/julienschmidt/httprouter@v1.3.0/router.go:387\ncertwarden-backend/pkg/domain/app.(*router).ServeHTTP\n\t/home/runner/work/certwarden/certwarden/pkg/domain/app/router.go:29\ncertwarden-backend/pkg/domain/app.(*Application).makeRouterAndRoutes.middlewareApplyBrowserSecurityHeaders.func2\n\t/home/runner/work/certwarden/certwarden/pkg/domain/app/middleware_common.go:50\nnet/http.HandlerFunc.ServeHTTP\n\t/opt/hostedtoolcache/go/1.24.2/x64/src/net/http/server.go:2294\ncertwarden-backend/pkg/domain/app.(*Application).makeRouterAndRoutes.middlewareApplyHSTS.func3\n\t/home/runner/work/certwarden/certwarden/pkg/domain/app/middleware_common.go:14\nnet/http.HandlerFunc.ServeHTTP\n\t/opt/hostedtoolcache/go/1.24.2/x64/src/net/http/server.go:2294\nnet/http.serverHandler.ServeHTTP\n\t/opt/hostedtoolcache/go/1.24.2/x64/src/net/http/server.go:3301\nnet/http.initALPNRequest.ServeHTTP\n\t/opt/hostedtoolcache/go/1.24.2/x64/src/net/http/server.go:3974\nnet/http.(*http2serverConn).runHandler\n\t/opt/hostedtoolcache/go/1.24.2/x64/src/net/http/h2_bundle.go:6529"},
Something tells me this isn't related though. FWIW both of the two instances of a true/false value in the config file are currently true. Neither of them are quoted.. but I have tried singles and doubled to no avail.