OidcWebClient

Creates an instance of OidcWebClient with the provided configuration block.

Return

An instance of OidcWebClient.

Parameters

block

The configuration block to apply to the OIDC web configuration.


fun OidcWebClient(json: JsonObject): Result<OidcWebClient>

Creates an instance of OidcWebClient from a JSON configuration.

Required OIDC fields are nested under oidc; web UI settings under web. Example:

{
"timeout": 30000,
"log": "STANDARD",
"oidc": {
"clientId": "my-client-id",
"discoveryEndpoint": "https://auth.example.com/.well-known/openid-configuration",
"scopes": ["openid", "profile"],
"redirectUri": "myapp://oauth2redirect",
"signOutRedirectUri": "myapp://logout",
"refreshThreshold": 60,
"loginHint": "user@example.com",
"state": "custom-state",
"nonce": "custom-nonce",
"display": "page",
"prompt": "login",
"uiLocales": "en-US",
"acrValues": "Level3",
"par": true,
"additionalParameters": { "max_age": "3600" },
"openId": {
"authorizationEndpoint": "https://auth.example.com/authorize",
"tokenEndpoint": "https://auth.example.com/token",
"userinfoEndpoint": "https://auth.example.com/userinfo",
"endSessionEndpoint": "https://auth.example.com/logout",
"revocationEndpoint": "https://auth.example.com/revoke"
}
},
}

Return

A Result containing the OidcWebClient or an exception if the configuration is invalid.

Parameters

json

The JSON configuration object.