WebAuthn
Web Authentication module
Introduction
Validates Web Authentication assertions.
Configuration
Main configuration
The main part of the configuration.
namespace
Modules within the same namespace belong together.
db_driver
Database driver, fully qualified class name
jdbc.url
JDBC url
jdbc.username
JDBC username
jdbc.password
JDBC password
secret_key_directory
Search path for secrets
encryption_key
origin
user_verification_required
user_presence_required
credential_request_options
Options for creating new passkeys, see below.
{
"name": "WebAuthnValidation",
"config": {
"namespace": "default",
"db_driver": "com.microsoft.sqlserver.jdbc.SQLServerDriver",
"jdbc": {
"url": "jdbc:sqlserver://<host>:<port>;database=<database>;encrypt=false",
"username": "<user>",
"password": "<password>"
},
"encryption_key": "<encryption key>",
"secret_key_directory": "resources/secrets",
"origin": "https://example.com:443",
"user_verification_required": true,
"user_presence_required": true,
"credential_request_options": {
"rpId": "example.com",
"timeout": 60000,
"userVerification": "preferred"
}
}
}Public Key Credential Request Options (credential_request_options)
This part of the configuration specifies options for the user agent. The configuration is sent from the server to the user agent when the agent begins a new authentication.
The table below describes the parameters involved, as specified by the W3C Recommendation from 8 April 2021 Web Authentication: An API for accessing Public KeyCredentials Level 2. The links refer to the W3C document.
A specification of how the user agent algorithm is determined by this configuration can be found here.
{
"name": "WebAuthnValidation",
"config": {
"namespace": "default",
"db_driver": "com.microsoft.sqlserver.jdbc.SQLServerDriver",
"jdbc": {
"url": "jdbc:sqlserver://<host>:<port>;database=<database>;encrypt=false",
"username": "<user>",
"password": "<password>"
},
"encryption_key": "<encryption key>",
"origin": "https://example.com:443",
"user_verification_required": true,
"user_presence_required": true,
"credential_request_options": {
"rpId": "example.com",
"timeout": 60000,
"userVerification": "preferred"
}
}
}