Web/API/PublicKeyCredentialRequestOptions/userVerification
Secure contextThis feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
userVerification is an optional property of the PublicKeyCredentialRequestOptions. This is a string which indicates how the user verification should be part of the authentication process.
Note: An analogous option exists for the creation operation (navigators.credentials.create()), see the userVerification property of PublicKeyCredentialCreationOptions.authenticatorSelection.
Syntax
userVerification = publicKeyCredentialRequestOptions.userVerification
Value
A string qualifying how the user verification should be part of the authentication process. The values may be:
"required": user verification is required, the operation will fail if the response does not have the UV flag (as part ofAuthenticatorAssertionResponse.authenticatorData)"preferred": user verification is prefered, the operation will not fail if the response does not have the UV flag (as part ofAuthenticatorAssertionResponse.authenticatorData)"discouraged": user verification should not be employed as to minimize the user interaction during the process.
The default value is "preferred".
Examples
var options = {
userVerification: "preferred",
challenge: new Uint8Array([/* bytes sent from the server */]),
};
navigator.credentials.get({ "publicKey": options })
.then(function (credentialInfoAssertion) {
// send assertion response back to the server
// to proceed with the control of the credential
}).catch(function (err) {
console.error(err);
});
Specifications
| Specification | Status | Comment |
|---|---|---|
| Web Authentication: An API for accessing Public Key Credentials Level 1The definition of 'userVerification' in that specification. | Recommendation | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Chrome
Full support 67 |
Edge
Full support ≤79 |
Firefox
Full support 60 |
IE
No support No |
Opera
Full support 54 |
Safari
Full support 13 |
WebView Android
Full support 67 |
Chrome Android
Full support 67 |
Firefox Android
? |
Opera Android
Full support 48 |
Safari iOS
Full support 13.3 |
Samsung Internet Android
No support No |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.'
- Experimental. Expect behavior to change in the future.
See also
PublicKeyCredentialCreationOptions.authenticatorSelectionwhoseuserVerificationproperty serves the same purpose for credential creation.
PublicKeyCredentialRequestOptions.userVerification by Mozilla Contributors is licensed under CC-BY-SA 2.5.