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

Web Authentication Feature Detection #383

Closed
2 of 4 tasks
agl opened this issue Jun 6, 2019 · 5 comments
Closed
2 of 4 tasks

Web Authentication Feature Detection #383

agl opened this issue Jun 6, 2019 · 5 comments

Comments

@agl
Copy link

agl commented Jun 6, 2019

I'm requesting a TAG review of:

Further details:

  • Relevant time constraints or deadlines: Web Authentication WG is likely to decide whether to land the PR in the coming weeks. It would then be in the pipeline for WebAuthn Level 2 Draft 2.
  • I have reviewed the TAG's API Design Principles
  • The group where the work on this specification is: Web Authentication

Background

The Web Authentication specification (“WebAuthn”) allows the use of security keys (a.k.a. “U2F” keys or “FIDO” keys) on the web. Different browsers have different levels of support for various features but, in level one, there was a single, ad-hoc feature-detection interface to signal whether a built-in user-verifying authenticator was configured. (E.g. Touch ID on some Macs.)

However, web sites wish to provide smarter experiences based on the features supported by a given browser, and grubbing around in the User-Agent header is unpleasant and fragile. Working along the lines of the relevant design principle, there is a proposal to add a more featureful detection interface in level two.

The WG is aware that feature-detection is a subject that has some history in web standards and are seeking input sooner rather than later.

The following is a personal perspective, but might still be helpful background:

The concerns here are not so much from a privacy perspective. For the single existing feature-detection call in level one, Chromium reasoned that the information exposed was little more than could be gathered from browser version and rough hardware device—information that web sites can generally obtain already. Likewise, with the proposed interface, the information does not seem to be more than a detailed database of User-Agent strings and a little probing with Javascript could figure out anyway. So the uncertainty in the WG is more around whether there are strong opinions in the web community about this topic in general that we should be aware of.

We'd prefer the TAG provide feedback as (please select one):

  • open issues in our GitHub repo for each point of feedback
  • open a single issue in our GitHub repo for the entire review. (Actually, feedback on the PR would keep things together.)
  • leave review feedback as a comment in this issue and @-notify [github usernames]
@dbaron
Copy link
Member

dbaron commented Jun 7, 2019

Is there an explainer somewhere? (The underlying use cases, plus some examples, seem particularly desirable.) It also seems like the answers to the questions in the security and privacy questionnaire would be useful here. (These are both things we generally request as part of a review and which are part of the issue template.)

@equalsJeffH
Copy link

equalsJeffH commented Jun 10, 2019

@dbaron -

Is there an explainer somewhere?

There are use cases and developer scenarios in the WebAuthn spec:

https://www.w3.org/TR/webauthn/#use-cases && https://www.w3.org/TR/webauthn/#sample-scenarios

There are also various WebAuthn API articles, here's a couple:

https://webauthn.guide/#webauthn-api

https://developer.mozilla.org/en-US/docs/Web/API/Web_Authentication_API

@dbaron
Copy link
Member

dbaron commented Jun 12, 2019

Those appear to cover the entirety of WebAuthn, not the particular issue the TAG is being asked to review here. Is there something covering just that?

Some questions that I might expect an explainer about the feature detection (in addition to what's in the Background section above) to answer might be:

  • what led to the choice of the level of granularity chosen, and what alternatives were considered
  • how the set of features exposed corresponds to the API surface (because separating the feature detection from the API surface is often undesirable)
  • what the major points of disagreement about the design were (and the arguments for each)

@plinss plinss added this to the 2019-07-24-telecon milestone Jul 10, 2019
@plinss plinss added the Progress: pending editor update TAG is waiting for a spec/explainer update label Jul 24, 2019
@hadleybeeman
Copy link
Member

Hi @agl and @jafisher-microsoft. We've come back to this in today's call, and are stuck here. If you're able to pick up the thread and help us out with an explainer for this specifically (Web Authn Feature Detection), a security and privacy questionnaire, and any example code, that would be great – we'd love to help! – but if you're able not right now, we're not sure what we can do to help. We'd suggest closing this and having you come back to us when you're ready.

What makes sense to you?

@torgo
Copy link
Member

torgo commented Sep 10, 2019

Hi @agl @jafischer-microsoft. Considering we haven't heard back after our last ping, we're going to close this one for now in order to help us manage our workload. Please feel free to ping us on this issue if you would like us to reopen.

@torgo torgo closed this as completed Sep 10, 2019
@dbaron dbaron added the Resolution: timed out The TAG has requesed additional information but has not received it label Sep 10, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants