Skip to main content
Version: v0.18.0

Configuration

In this section, the configuration of the SSO bridge is explained. Configuration is used based on a config.yaml file which should be placed in the apps/backend folder. This config.yaml file is loaded when booting the application. The values get type checked, and it gives a clear error message if there is a configuration field missing or provided incorrectly. Next to the config.yaml file, you can also set environment variables. These override the values that are listed in the config.yaml file.

Databases​

By default, the development database is sqlite. We use postgres databases for production type instances of the http data planes.

Configuration parameters​

KeyRequiredTypeDescriptionDefault
DatabaseConfig
dbYesDatabaseConfigDatabase configuration
db.typeYes"sqlite" | "postgres"Type of database
db.databaseYesStringName of the database
db.synchronizeBooleanSynchronize database schema
db{type=sqlite}YesSQLiteConfigDatabase configuration
db{type=sqlite}.type"sqlite" | "postgres"Type of database"sqlite"
db{type=sqlite}.databaseYesStringName of the database
db{type=sqlite}.synchronizeBooleanSynchronize database schema
db{type=postgres}YesPostgresConfigDatabase configuration
db{type=postgres}.hostYesStringHost of the database
db{type=postgres}.portYesNumberPort of the database
db{type=postgres}.usernameYesStringUsername of the database
db{type=postgres}.passwordYesStringPassword of the database
db{type=postgres}.sslUnknownSSL configuration of the database
db{type=postgres}.type"sqlite" | "postgres"Type of database"postgres"
db{type=postgres}.databaseYesStringName of the database
db{type=postgres}.synchronizeBooleanSynchronize database schema
ServerConfig
serverServerConfigServer configuration
server.listenStringIP address the server listens on"0.0.0.0"
server.portNumberPort the server listens on3000
server.publicDomainStringPublic domain of the server"localhost"
server.publicAddressStringPublic address of the server"http://localhost:3000"
server.subPathStringSub path of the server
InitClient
initClientsInitClient[]Initial client configurations
initClients[].clientIdYesStringClient ID
initClients[].clientSecretStringClient secret (required for client_secret_post authentication)
initClients[].tokenEndpointAuthMethod"client_secret_post" | "private_key_jwt" | "none"Token endpoint authentication method: client_secret_post, private_key_jwt, or none"client_secret_post"
initClients[].jwkObjectPublic key in JWK format (required for private_key_jwt authentication)
initClients[].secretNameYesStringKubernetes secret name
initClients[].permissionsYesStringClient permissions (can be permission strings or permission set names)
initClients[].grantsStringClient grants types supported["client_credentials"]
initClients[].nameYesStringClient name
initClients[].descriptionYesStringClient description
initClients[].redirectUrisYesStringAllowed Client redirect URIs regex
InitUser
initUsersInitUser[]Initial user configurations
initUsers[].usernameYesStringUsername
initUsers[].passwordYesStringPassword
initUsers[].emailYesStringEmail
initUsers[].permissionsYesStringUser permissions (can be permission strings or permission set names)
initUsers[].grantsStringGrant types supported["authorization_code","refresh_token"]
initUsers[].require2FABooleanRequire two-factor authentication for this user. User will be prompted to set up 2FA on first login.
kubernetesNamespaceStringKubernetes namespace"default"
twoFactorIssuerNameStringIssuer name for Two-Factor Authentication (shown in authenticator apps)"SSO Bridge"
dcqlQueryMapUnknownDCQL Query map for OID4VP{"Administrator":{"credentials":[{"id":"identity_credential","format":"jwt_vc_json","meta":{"type_values":[["VerifiableCredential","HandsonCredential"]]},"claims":[{"id":"email","path":["credentialSubject","email"]},{"id":"role","path":["credentialSubject","role"],"values":["Administrator"]}]}]},"User":{"credentials":[{"id":"identity_credential","format":"jwt_vc_json","meta":{"type_values":[["VerifiableCredential","HandsonCredential"]]},"claims":[{"id":"email","path":["credentialSubject","email"]}]}]}}