Dev mode

Development mode for seamless local development

Dev mode

Since 0.10.0, there is a local dev mode available. It can only be enabled if the NODE_ENV environment variable is not set to prod/production AND dev mode is explicitly enabled in the config. The dev mode is for local and offline development and returns a static user object that can be configured in the config or by variables in .env. The following fields in the returned user object can be configured:

  • claims: devMode.claims setting
  • provider: devMode.provider setting
  • userName: devMode.userName setting
  • userInfo: devMode.userInfo setting
  • idToken: devMode.idToken setting
  • accessToken: devMode.accessToken setting

Please refer to user object for required types.

Enabling

To enable the dev mode, you have to make sure at least the following settings are set:

  • session -> expirationCheck needs to be turned off (false)
  • devMode -> enabled set to true in the oidc part of your nuxt.config.ts

Token generation

If needed, the dev mode can generate a valid signed access token if the settting devMode -> generateAccessToken is set to true. This token will be exposed in the user.accessToken property. The properties on the generated token are

  • iat (issued at): current DateTime,
  • iss (issuer): devMode.issuer setting, default nuxt:oidc:auth:issuer
  • aud: devMode.audience setting, default nuxt:oidc:auth:audience
  • sub: devMode.subject setting, default nuxt:oidc:auth:subject
  • exp: current DateTime + 24h
The access token will be generated with a fixed local secret and can in no way be considered secure. Dev mode can only be enabled in local development and should exclusively be used there for testing purposes. Never set any environment variables on your production systems that could put any component into development mode.

Copyright © 2024