AuthenticatorState

sealed interface AuthenticatorState : NetworkAuthenticationChallengeHandler, ArcGISAuthenticationChallengeHandler

Handles authentication challenges and exposes state for the Authenticator to display to the user.

Since

200.2.0

Properties

Link copied to clipboard
abstract var iapConfigurations: List<IapConfiguration>

A list that holds the IapConfigurations that can be used for IAP-based sign ins. If empty, IAP-based sign ins will not be used.

Link copied to clipboard
abstract val isDisplayed: Flow<Boolean>

Indicates if the authenticator should be displayed, ie. if any challenges are pending. This can be used to determine whether to display UI on the screen.

Link copied to clipboard
abstract var oAuthUserConfiguration: OAuthUserConfiguration?

The OAuthUserConfiguration to use for any sign ins. If null, OAuth will not be used for any ArcGISAuthenticationChallenge. If the OAuth configuration is invalid, the Authenticator will not launch an OAuth browser page and will prompt for a username and password instead.

Link copied to clipboard
abstract var oAuthUserConfigurations: List<OAuthUserConfiguration>

A list of OAuthUserConfigurations that can be used for OAuth-based sign ins.

Link copied to clipboard

The current ClientCertificateChallenge awaiting completion. Use this to complete or cancel any challenge requiring a client certificate.

Link copied to clipboard
abstract val pendingIapSignIn: StateFlow<IapSignIn?>

The current IapSignIn awaiting completion. Use this to complete or cancel the IAP authentication challenge.

Link copied to clipboard
abstract val pendingIapSignOut: StateFlow<IapSignOut?>

The current IapSignOut awaiting completion. Use this to complete the IAP sign out challenge.

Link copied to clipboard
abstract val pendingOAuthUserSignIn: StateFlow<OAuthUserSignIn?>

The current OAuthUserSignIn awaiting completion. Use this to complete or cancel the OAuth authentication challenge.

Link copied to clipboard

The current ServerTrustChallenge awaiting completion. Use this to trust or distrust a server trust challenge.

Link copied to clipboard

The current UsernamePasswordChallenge awaiting completion. Use this to complete or cancel any challenge requiring username and password authentication.

Functions

Link copied to clipboard

Completes the current browser-based authentication challenge for the AuthenticatorState.

Link copied to clipboard

Completes the current AuthenticatorState.pendingOAuthUserSignIn with data from the provided intent.

Link copied to clipboard
abstract fun dismissAll()

Dismisses any currently pending challenges.

Link copied to clipboard
abstract suspend fun handleArcGISAuthenticationChallenge(challenge: ArcGISAuthenticationChallenge): ArcGISAuthenticationChallengeResponse
Link copied to clipboard
abstract suspend fun handleNetworkAuthenticationChallenge(challenge: NetworkAuthenticationChallenge): NetworkAuthenticationChallengeResponse
Link copied to clipboard
abstract suspend fun signOut(): Result<Unit>

Revokes authentication state by: