[wpt-sync] Sync PR 43820 - webauthn: implement PublicKeyCredential.parseCreationOptionsFromJSON()
Categories
(Core :: DOM: Web Authentication, task, P4)
Tracking
()
Tracking | Status | |
---|---|---|
firefox123 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 43820 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/43820
Details from upstream follow.
Martin Kreichgauer <martinkr@google.com> wrote:
webauthn: implement PublicKeyCredential.parseCreationOptionsFromJSON()
This adds IDL, implementation and WPT for a method that parses a
PublicKeyCredentialCreationOptions from an equivalent JSON type. Flag
guarded by the existing WebAuthenticationJSONSerialization runtime flag.Spec: https://w3c.github.io/webauthn/#sctn-parseCreationOptionsFromJSON
Bug: 1401128
Change-Id: Id7140d93774d39bbd51185fdb8c66448e0b1a629
Reviewed-on: https://chromium-review.googlesource.com/5155353
WPT-Export-Revision: 2d8e0526d017d6de15922fc060d73aae8a75cb12
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 1•1 year ago
|
||
Assignee | ||
Comment 2•1 year ago
|
||
CI Results
Ran 0 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 41 tests and 1 subtests
Status Summary
Firefox
OK
: 41
PASS
: 290
FAIL
: 50
Chrome
OK
: 41
PASS
: 331
FAIL
: 9
Safari
OK
: 37
PASS
: 231
FAIL
: 81
TIMEOUT
: 8
NOTRUN
: 24
Links
Details
Firefox-only Failures
- /webauthn/createcredential-pubkeycredparams.https.html [wpt.fyi]
- Bad pubKeyCredParams: first param has bad type ("something-else"):
FAIL
- Bad pubKeyCredParams: first param has bad type (""):
FAIL
- Bad pubKeyCredParams: first param has bad type (null):
FAIL
- Bad pubKeyCredParams: first param has bad type (empty object):
FAIL
- Bad pubKeyCredParams: first param has bad type ("something-else"):
New Tests That Don't Pass
- /secure-payment-confirmation/enrollment.https.html [wpt.fyi]
- Payment credential is created successfully.:
FAIL
(Chrome:PASS
, Safari:TIMEOUT
) - Payment credential allows residentKey to be "preferred".:
FAIL
(Chrome:PASS
, Safari:NOTRUN
) - Payment credential requires userVerification to be "required", not "preferred".:
FAIL
(Chrome:PASS
, Safari:NOTRUN
) - Payment credential requires userVerification to be "required", not "discouraged".:
FAIL
(Chrome:PASS
, Safari:NOTRUN
) - Payment credential does not allow residentKey to be "discouraged".:
FAIL
(Chrome:PASS
, Safari:NOTRUN
) - Payment credential requires authenticatorAttachment to be "platform", not "cross-platform".:
FAIL
(Chrome:PASS
, Safari:NOTRUN
)
- Payment credential is created successfully.:
- /webauthn/createcredential-extensions.https.html [wpt.fyi]
- navigator.credentials.create() with prf requested but no support in authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- navigator.credentials.create() with prf requested but no support in authenticator:
- /webauthn/createcredential-large-blob-not-supported.https.html [wpt.fyi]
- navigator.credentials.create() with largeBlob.write set:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.create() with largeBlob.read set:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.create() with largeBlob.support set to preferred and not supported by authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.create() with largeBlob.support not set and not supported by authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.create() with largeBlob.support set to required and not supported by authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- navigator.credentials.create() with largeBlob.write set:
- /webauthn/createcredential-large-blob-supported.https.html [wpt.fyi]
- navigator.credentials.create() with largeBlob.support set to preferred and supported by authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.create() with largeBlob.support not set and supported by authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.create() with largeBlob.support set to required and supported by authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- navigator.credentials.create() with largeBlob.support set to preferred and supported by authenticator:
- /webauthn/createcredential-prf.https.html [wpt.fyi]
- navigator.credentials.create() with prf requested:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.create() with nonsensical evalByCredential:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.create() with eval:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- navigator.credentials.create() with prf requested:
- /webauthn/createcredential-pubkeycredparams.https.html [wpt.fyi]
- Bad pubKeyCredParams: first param has bad type ("something-else"):
FAIL
(Chrome:PASS
, Safari:PASS
) - Bad pubKeyCredParams: first param has bad type (""):
FAIL
(Chrome:PASS
, Safari:PASS
) - Bad pubKeyCredParams: first param has bad type (null):
FAIL
(Chrome:PASS
, Safari:PASS
) - Bad pubKeyCredParams: first param has bad type (empty object):
FAIL
(Chrome:PASS
, Safari:PASS
)
- Bad pubKeyCredParams: first param has bad type ("something-else"):
- /webauthn/createcredential-resident-key.https.html [wpt.fyi]
- CTAP 2.0 with resident key support: navigator.credentials.create() with credProps extension, rk=discouraged:
FAIL
(Chrome:PASS
, Safari:NOTRUN
)
- CTAP 2.0 with resident key support: navigator.credentials.create() with credProps extension, rk=discouraged:
- /webauthn/credblob-not-supported.https.html [wpt.fyi]
- creation requesting credBlob without authenticator support:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- creation requesting credBlob without authenticator support:
- /webauthn/credblob-supported.https.html [wpt.fyi]
- assertion without credBlob:
FAIL
(Chrome:PASS
, Safari:FAIL
) - assertion with credBlob:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- assertion without credBlob:
- /webauthn/getcredential-extensions.https.html [wpt.fyi]
- Payment extension is only supported at registration:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with prf requested but no support in authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- Payment extension is only supported at registration:
- /webauthn/getcredential-large-blob-not-supported.https.html [wpt.fyi]
- navigator.credentials.get() with largeBlob.support set:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with largeBlob.read and largeBlob.write set:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with largeBlob.read set without authenticator support:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with largeBlob.write set without authenticator support:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- navigator.credentials.get() with largeBlob.support set:
- /webauthn/getcredential-large-blob-supported.https.html [wpt.fyi]
- navigator.credentials.get() with largeBlob.read set with no blob on authenticator:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() read and write blob:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- navigator.credentials.get() with largeBlob.read set with no blob on authenticator:
- /webauthn/getcredential-prf.https.html [wpt.fyi]
- navigator.credentials.get() with single evaluation point:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with two equal evaluation points:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with two distinct evaluation points:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() using credential ID with one evaluation point:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() using credential ID with two evaluation points:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with credential ID not in allowedCredentials:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with Uint8Array credential ID not in allowedCredentials:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() using invalid base64url credential ID:
FAIL
(Chrome:PASS
, Safari:FAIL
) - navigator.credentials.get() with an empty allow list but also using evalByCredential:
FAIL
(Chrome:PASS
, Safari:FAIL
)
- navigator.credentials.get() with single evaluation point:
- /webauthn/idlharness.https.window.html [wpt.fyi]
- PublicKeyCredential interface: operation isPasskeyPlatformAuthenticatorAvailable():
FAIL
(Chrome:FAIL
, Safari:FAIL
) - AuthenticatorAssertionResponse interface: attribute attestationObject:
FAIL
(Chrome:FAIL
, Safari:FAIL
)
- PublicKeyCredential interface: operation isPasskeyPlatformAuthenticatorAvailable():
- /webauthn/public-key-credential-creation-options-from-json.https.window.html [wpt.fyi]
- parseCreationOptionsFromJSON():
FAIL
(Chrome:FAIL
, Safari:FAIL
) - parseCreationOptionsFromJSON() with extensions:
FAIL
(Chrome:FAIL
, Safari:FAIL
)
- parseCreationOptionsFromJSON():
- /webauthn/public-key-credential-to-json.https.window.html [wpt.fyi]
- toJSON():
FAIL
(Chrome:PASS
, Safari:FAIL
)
- toJSON():
- /webauthn/remote-desktop-client-override.tentative.https.html [wpt.fyi]
- create() with remoteDesktopClientOverride:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - get() with remoteDesktopClientOverride on an unauthorized site:
FAIL
(Chrome:FAIL
, Safari:FAIL
)
- create() with remoteDesktopClientOverride:
Comment 4•1 year ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/2bd52251ad3a
https://hg.mozilla.org/mozilla-central/rev/5e6ab2882cdb
Description
•