DocumentProvisioningHandler
Implementation of AbstractDocumentMetadataHandler suitable for most uses.
This implementation uses DocumentUtil.managedCredentialHelper with per-document settings obtained using getDocumentProvisioningSettings.
Applications can fine-tune what kind of credentials to retrieve for a particular document and/or issuer by overriding getDocumentProvisioningSettings if the default DocumentProvisioningSettings is not suitable.
The default settings are to request two domains of credentials, one with user authentication required and a domain for without. This is to enable an optional "pre-consent" experience, with this setup a wallet app can simply check if it has credentials in the no-auth-required domain and if so offer a setting for the user to present the credential to e.g. select RPs without any consent or authentication.
However, some issuers will not want to mint credentials without user authentication and will enforce this by e.g. checking the Android Keystore key attestation for whether the key is configured to require user authentication. For such issuers, the application can disable requesting such credentials by tweaking the settings for that particular issuer and/or credential type.
Parameters
credentials will be bound to keys from this SecureArea
new Document will be created in this DocumentStore
interface that initializes and updates document metadata; it may be provided if DocumentStore uses an AbstractDocumentMetadata factory (see DocumentStore.Builder.setDocumentMetadataFactory).
the default DocumentProvisioningSettings to use.
Constructors
Types
Manager document metadata when the document is created and when the metadata is updated from the server.
Properties
Functions
Clean up after failed not-initial (e.g. credential refresh) provisioning.
Clean up after failed initial provisioning (e.g. by deleting the document)
Creates a new Document to do initial credential provisioning.
Function to select which DocumentProvisioningSettings to use when provisioning.
Gets the pending key-bound credentials for a document.
Gets the pending keyless credentials.
Update the Document data.