Package-level declarations

Types

Link copied to clipboard

Room-backed DefaultCredentialIdStore that persists the default credential ID in the same TokenDatabase used by RoomTokenStorage.

Link copied to clipboard
class RoomTokenStorage(database: TokenDatabase, encryptionHandler: TokenEncryptionHandler, configuration: OAuth2ClientConfiguration) : TokenStorage

Cross-platform TokenStorage implementation backed by Room.

Link copied to clipboard
abstract class TokenDatabase : <ERROR CLASS> ERROR CLASS: Symbol not found for RoomDatabase

Cross-platform Room database for persisting OAuth2 tokens.

Link copied to clipboard
expect object TokenDatabaseConstructor : <ERROR CLASS> ERROR CLASS: Symbol not found for RoomDatabaseConstructor<com/okta/authfoundation/credential/kmp/storage/TokenDatabase>

Room KMP constructor for TokenDatabase.

Functions

Link copied to clipboard
fun createEncryptedTokenStorage(context: Context, configuration: OAuth2ClientConfiguration, keyAlias: String = AndroidTokenEncryptionHandler.DEFAULT_KEY_ALIAS, requireBiometric: Boolean = false, userAuthenticationTimeout: Int = 5, promptInfo: BiometricPrompt.PromptInfo? = null, dbName: String = TokenDatabase.DB_NAME): RoomTokenStorage

Creates a RoomTokenStorage for Android applications, encrypting the access token via AndroidTokenEncryptionHandler (Android Keystore, with optional biometric gating).

fun createEncryptedTokenStorage(configuration: OAuth2ClientConfiguration, dbPath: String = ".okta", encryptionKeyProvider: () -> SecretKey? = null): RoomTokenStorage

Creates a RoomTokenStorage for JVM applications with AES-256-GCM encryption.

Link copied to clipboard
fun createTokenDatabase(context: Context, dbName: String = TokenDatabase.DB_NAME): TokenDatabase

Creates a TokenDatabase for Android applications, backed by Room's bundled SQLite driver.

fun createTokenDatabase(dbPath: String = ".okta"): TokenDatabase

Creates a TokenDatabase for JVM applications using file-based SQLite.