Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

change AuthenticatorTransport to be other than an enum #1268

Closed
equalsJeffH opened this issue Jul 31, 2019 · 3 comments · Fixed by #1275
Closed

change AuthenticatorTransport to be other than an enum #1268

equalsJeffH opened this issue Jul 31, 2019 · 3 comments · Fixed by #1275

Comments

@equalsJeffH
Copy link
Contributor

we want to add values to AuthenticatorTransport without non-congnizant UAs throwing errors on values they are unaware of. change it to a sequence of strings? see also PR #1264

@equalsJeffH equalsJeffH added this to the L2-WD-02 milestone Jul 31, 2019
@jcjones
Copy link
Contributor

jcjones commented Aug 12, 2019

Just to be clear, right now the Web Authentication spec only allows values for AuthenticatorTransport that are in the level 1 spec. Permitting other values is a violation of WebIDL's definition of enumeration

A fix for this would be to change PublicKeyCredentialDescriptor's transports sequence to one of DOMString and update the algorithm to note that each string should be coerced into a transport type known by the implementation, or ignored if unknown.

dictionary PublicKeyCredentialDescriptor {
    required PublicKeyCredentialType      type;
    required BufferSource                 id;
    sequence<DOMString>                   transports;
};

@jcjones
Copy link
Contributor

jcjones commented Aug 12, 2019

Also note, this is a breaking change, in that if updates aren't done in the right sequence, we'll have webcompat issues.

@jcjones
Copy link
Contributor

jcjones commented Aug 13, 2019

It appears that Chromium has already made the breaking change, so we do have an active webcompat issue. Cite: https://security.googleblog.com/2019/08/making-authentication-even-easier-with_12.html

agl added a commit to agl/webauthn that referenced this issue Aug 20, 2019
akshayku pushed a commit that referenced this issue Aug 28, 2019
* Type transport strings as DOMStrings.

Currently transports are represented as an enum. However, WebIDL has
strict enums. (I.e. an RP which sent an unrecognised transport would
make the whole structure unparsable.) This means that every time we add
a transport, we break all existing browsers.

In order to address this, this change retypes transports as plain
DOMStrings. The AuthenticatorTransport enum still exists, but now only
as documentation and registry — not as a factor in type-checking.

* Address Emil's comment

Fixes #1268.

* Address Jeff's comments.
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this issue Sep 17, 2019
…r=bzbarsky,keeler

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

--HG--
extra : moz-landing-system : lando
xeonchen pushed a commit to xeonchen/gecko that referenced this issue Sep 17, 2019
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this issue Sep 17, 2019
…r=bzbarsky,keeler

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

--HG--
extra : moz-landing-system : lando
xeonchen pushed a commit to xeonchen/gecko that referenced this issue Sep 17, 2019
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this issue Sep 19, 2019
…r=bzbarsky,keeler a=RyanVM

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

--HG--
extra : rebase_source : 0d52b08eeaed266d322e03f4be8706157f130f12
extra : source : 069df0a1d93c091ca867423a7a8cd6bc36428201
xeonchen pushed a commit to xeonchen/gecko that referenced this issue Sep 19, 2019
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this issue Sep 19, 2019
…r=bzbarsky,keeler a=RyanVM

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

--HG--
extra : source : 069df0a1d93c091ca867423a7a8cd6bc36428201
extra : intermediate-source : 17b847ad15633a9419e8b98254000c4f413575db
extra : histedit_source : d696281118eb94867015eda847aa051ee7a6c77f
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this issue Oct 4, 2019
…r=bzbarsky,keeler

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

UltraBlame original commit: cfdf258c11ae6136fdaa1e0786dba757fb284c48
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this issue Oct 4, 2019
…r=bzbarsky,keeler

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

UltraBlame original commit: 069df0a1d93c091ca867423a7a8cd6bc36428201
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this issue Oct 4, 2019
…r=bzbarsky,keeler

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

UltraBlame original commit: cfdf258c11ae6136fdaa1e0786dba757fb284c48
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this issue Oct 4, 2019
…r=bzbarsky,keeler

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

UltraBlame original commit: 069df0a1d93c091ca867423a7a8cd6bc36428201
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this issue Oct 4, 2019
…r=bzbarsky,keeler

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

UltraBlame original commit: cfdf258c11ae6136fdaa1e0786dba757fb284c48
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this issue Oct 4, 2019
…r=bzbarsky,keeler

Upstream: w3c/webauthn#1268

Differential Revision: https://phabricator.services.mozilla.com/D41620

UltraBlame original commit: 069df0a1d93c091ca867423a7a8cd6bc36428201
xeonchen pushed a commit to xeonchen/gecko that referenced this issue Dec 9, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants