package com.codename1.io.oidc

OpenID Connect (OIDC) client with PKCE.

OidcClient drives the Authorization Code + PKCE flow against any standards-compliant identity provider (Auth0, Okta, Google, Microsoft Entra, Keycloak, …). It launches a system browser via SystemBrowser / OidcBrowserNative, exchanges the authorization code for tokens, and persists them through a pluggable TokenStore.

Companion classes (OidcConfiguration, OidcTokens, PkceChallenge, OidcException) carry configuration, results and errors.

Types

interface OidcBrowserNativeService-provider interface that SystemBrowser uses to dispatch a sign-in flow through the OS’s hardened sign-in surface (ASWebAuthenticationSession on iOS, androidx.browser.customtabs / Credential Manager on Android).
class OidcClientModern OpenID Connect / OAuth 2.0 client.
class OidcConfigurationThe subset of an OpenID Connect provider’s .well-known/openid-configuration document that OidcClient cares about.
class OidcExceptionThrown for failures during an OpenID Connect / OAuth 2.0 flow driven by OidcClient.
class OidcTokensThe tokens returned by an OpenID Connect token endpoint, with convenience accessors for the OIDC ID token claims.
class PkceChallengeOne PKCE pair (RFC 7636).
class SystemBrowserRoutes an authorization-code-flow sign-in through the system browser (ASWebAuthenticationSession on iOS, an Android Custom Tab on Android, the user’s default browser on JavaSE / Web) and resolves with the final redirect URL once the OS hands it back.
interface TokenStorePluggable persistence for an OidcClient’s tokens.