plinth/browser/credentials/public_key
Types
pub type Attestation {
NoAttestation
Direct
Enterprise
Indirect
}
Constructors
-
NoAttestation
-
Direct
-
Enterprise
-
Indirect
pub type AuthenticatorAttachement {
Platform
CrossPlatform
}
Constructors
-
Platform
-
CrossPlatform
pub type CreationOptions {
CreationOptions(
attestation: Attestation,
attestation_formats: List(String),
authenticator_attachement: Option(AuthenticatorAttachement),
resident_key: Requirement,
user_verification: Requirement,
challenge: BitArray,
exclude_credentials: List(#(BitArray, List(Transport))),
public_key_credential_parameters: List(Algorithm),
relaying_party_id: Option(String),
relaying_party_name: String,
timeout: Option(Int),
user_id: BitArray,
user_name: String,
user_display_name: String,
hints: List(Hint),
)
}
Constructors
-
CreationOptions( attestation: Attestation, attestation_formats: List(String), authenticator_attachement: Option(AuthenticatorAttachement), resident_key: Requirement, user_verification: Requirement, challenge: BitArray, exclude_credentials: List(#(BitArray, List(Transport))), public_key_credential_parameters: List(Algorithm), relaying_party_id: Option(String), relaying_party_name: String, timeout: Option(Int), user_id: BitArray, user_name: String, user_display_name: String, hints: List(Hint), )
pub type Credential(t)
pub type Hint {
SecurityKey
ClientDevice
HybridHint
}
Constructors
-
SecurityKey
-
ClientDevice
-
HybridHint
pub type NativeCreationOptions
pub type NativeRequestOptions
pub type RequestOptions {
RequestOptions(
allow_credentials: List(#(BitArray, List(Transport))),
challenge: BitArray,
hints: List(Hint),
relaying_party_id: Option(String),
timeout: Option(Int),
user_verification: Requirement,
)
}
Constructors
-
RequestOptions( allow_credentials: List(#(BitArray, List(Transport))), challenge: BitArray, hints: List(Hint), relaying_party_id: Option(String), timeout: Option(Int), user_verification: Requirement, )
pub type Requirement {
Required
Preferred
Discouraged
}
Constructors
-
Required
-
Preferred
-
Discouraged
Functions
pub fn algorithm_to_number(algorithm: Algorithm) -> Int
pub fn attestation_object(
credential: Credential(Attest),
) -> BitArray
pub fn authenticator_attachment(
credential: Credential(a),
) -> AuthenticatorAttachement
pub fn authenticator_data(
credential: Credential(Assertion),
) -> BitArray
pub fn client_data_json(credential: Credential(a)) -> BitArray
pub fn create(
container: CredentialsContainer,
options: CreationOptions,
) -> Promise(Result(Credential(Attest), String))
pub fn creation(
challenge: BitArray,
algorithm: Algorithm,
relaying_party_name: String,
user_id: BitArray,
user_name: String,
user_display_name: String,
) -> CreationOptions
pub fn do_create(
container: CredentialsContainer,
options: NativeCreationOptions,
) -> Promise(Result(Credential(Attest), String))
pub fn do_get(
container: CredentialsContainer,
options: NativeRequestOptions,
) -> Promise(Result(Credential(Assertion), String))
pub fn get(
container: CredentialsContainer,
options: RequestOptions,
) -> Promise(Result(Credential(Assertion), String))
pub fn get_authenticator_data(
credential: Credential(Attest),
) -> BitArray
pub fn get_public_key(credential: Credential(Attest)) -> BitArray
pub fn get_public_key_algorithm(
credential: Credential(Attest),
) -> BitArray
pub fn get_transports(credential: Credential(Attest)) -> BitArray
pub fn id(credential: Credential(a)) -> String
This property is a base64url encoded version of PublicKeyCredential.rawId.
pub fn is_conditional_mediation_available() -> Promise(Bool)
pub fn is_user_verifying_platform_authenticator_available() -> Promise(
Bool,
)
pub fn parse_creation_options_from_json(
options: Dynamic,
) -> Result(NativeCreationOptions, String)
pub fn parse_request_options_from_json(
options: Dynamic,
) -> Result(NativeRequestOptions, String)
pub fn user_handle(credential: Credential(Assertion)) -> BitArray