- From: Dominique Hazael-Massieux <dom@w3.org>
- Date: Wed, 17 Mar 2021 17:16:38 +0100
- To: public-webauthn-adoption@w3.org
Hi,
Starting from the changes between Level 1 and 2 of WebAuthn [1], I've
found the following gaps in MDN on the new API surface:
* AuthenticatorAttestationResponse.getAuthenticatorData(),
AuthenticatorAttestationResponse.getPublicKey() and
AuthenticatorAttestationResponse.getPublicKeyAlgorithm() aren't
documented in
https://developer.mozilla.org/en-US/docs/Web/API/AuthenticatorAttestationResponse
(would need additions
https://github.com/mdn/content/tree/main/files/en-us/web/api/authenticatorattestationresponse
both in the index.html file and with new subdirectories for each
individual method)
* the residentKey parameter of authenticatorSelection is not documented
https://developer.mozilla.org/en-US/docs/Web/API/PublicKeyCredentialCreationOptions/authenticatorSelection
(would need to be added in
https://github.com/mdn/content/blob/main/files/en-us/web/api/publickeycredentialcreationoptions/authenticatorselection/index.html)
* the value "enterprise" is not documented in
https://developer.mozilla.org/en-US/docs/Web/API/PublicKeyCredentialCreationOptions/attestation
(would need to be added in
https://github.com/mdn/content/blob/main/files/en-us/web/api/publickeycredentialcreationoptions/attestation/index.html)
* appid, appidExclude, credProps, largeBlob aren't documented in
https://developer.mozilla.org/en-US/docs/Web/API/PublicKeyCredentialCreationOptions/extensions
(would need to be added in
https://github.com/mdn/content/blob/main/files/en-us/web/api/publickeycredentialcreationoptions/extensions/index.html)
* conversely, authnSel, exts, uvi, loc, biometricPerfBounds are listed
there, but have been removed from level 2
* none of the output extensions (not even the level 1) are documented
in
https://developer.mozilla.org/en-US/docs/Web/API/PublicKeyCredential/getClientExtensionResults
(lives in
https://github.com/mdn/content/blob/main/files/en-us/web/api/publickeycredential/getclientextensionresults/index.html)
* the "crossOrigin" property of AuthenticatorResponse.clientDataJSON is
not documented in
https://developer.mozilla.org/en-US/docs/Web/API/AuthenticatorResponse/clientDataJSON
* in that same page, tokenBindingId should be renamed tokenBinding
I could take a stab at starting one or several pull requests with the
skeleton for these changes, but a number of them would require someone
with better understanding of the API before they can be submitted to MDN
- any volunteer to help?
Dom
1. 27a28,31
> sequence<DOMString> getTransports();
> ArrayBuffer
getAuthenticatorData();
> ArrayBuffer? getPublicKey();
> COSEAlgorithmIdentifier
getPublicKeyAlgorithm();
38c42
< required PublicKeyCredentialType type;
---
> required DOMString type;
52c56
< AttestationConveyancePreference attestation = "none";
---
> DOMString attestation = "none";
58d61
< USVString icon;
71c74,75
< AuthenticatorAttachment authenticatorAttachment;
---
> DOMString authenticatorAttachment;
> DOMString residentKey;
73c77
< UserVerificationRequirement userVerification = "preferred";
---
> DOMString userVerification = "preferred";
80a85,90
> enum ResidentKeyRequirement {
> "discouraged",
> "preferred",
> "required"
> };
>
84c94,95
< "direct"
---
> "direct",
> "enterprise"
92c103
< UserVerificationRequirement userVerification = "preferred";
---
> DOMString userVerification = "preferred";
102,103d112
< typedef record<DOMString, DOMString>
AuthenticationExtensionsAuthenticatorInputs;
<
107a117
> boolean crossOrigin;
112c122
< required TokenBindingStatus status;
---
> required DOMString status;
123c133
< required PublicKeyCredentialType type;
---
> required DOMString type;
125c135
< sequence<AuthenticatorTransport> transports;
---
> sequence<DOMString> transports;
152c162
< USVString txAuthSimple;
---
> USVString appidExclude;
156,161c166
< USVString txAuthSimple;
< };
<
< dictionary txAuthGenericArg {
< required USVString contentType; // MIME-Type of the content,
e.g., "image/png"
< required ArrayBuffer content;
---
> boolean appidExclude;
165,175c170
< txAuthGenericArg txAuthGeneric;
< };
<
< partial dictionary AuthenticationExtensionsClientOutputs {
< ArrayBuffer txAuthGeneric;
< };
<
< typedef sequence<AAGUID> AuthenticatorSelectionList;
<
< partial dictionary AuthenticationExtensionsClientInputs {
< AuthenticatorSelectionList authnSel;
---
> boolean uvm;
178c173,174
< typedef BufferSource AAGUID;
---
> typedef sequence<unsigned long> UvmEntry;
> typedef sequence<UvmEntry> UvmEntries;
181c177
< boolean authnSel;
---
> UvmEntries uvm;
185,191c181
< boolean exts;
< };
<
< typedef sequence<USVString> AuthenticationExtensionsSupported;
<
< partial dictionary AuthenticationExtensionsClientOutputs {
< AuthenticationExtensionsSupported exts;
---
> boolean credProps;
194,195c184,185
< partial dictionary AuthenticationExtensionsClientInputs {
< boolean uvi;
---
> dictionary CredentialPropertiesOutput {
> boolean rk;
199c189
< ArrayBuffer uvi;
---
> CredentialPropertiesOutput credProps;
203c193
< boolean loc;
---
> AuthenticationExtensionsLargeBlobInputs largeBlob;
206,207c196,198
< partial dictionary AuthenticationExtensionsClientOutputs {
< Coordinates loc;
---
> enum LargeBlobSupport {
> "required",
> "preferred",
210,211c201,204
< partial dictionary AuthenticationExtensionsClientInputs {
< boolean uvm;
---
> dictionary AuthenticationExtensionsLargeBlobInputs {
> DOMString support;
> boolean read;
> BufferSource write;
214,216d206
< typedef sequence<unsigned long> UvmEntry;
< typedef sequence<UvmEntry> UvmEntries;
<
218c208
< UvmEntries uvm;
---
> AuthenticationExtensionsLargeBlobOutputs largeBlob;
221,224c211,215
< dictionary authenticatorBiometricPerfBounds{
< float FAR;
< float FRR;
< };
---
> dictionary AuthenticationExtensionsLargeBlobOutputs {
> boolean supported;
> ArrayBuffer blob;
> boolean written;
> };
Received on Wednesday, 17 March 2021 16:16:42 UTC