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

Supported features detection from the browser #1202

Closed
Kieun opened this issue Apr 22, 2019 · 5 comments
Closed

Supported features detection from the browser #1202

Kieun opened this issue Apr 22, 2019 · 5 comments

Comments

@Kieun
Copy link
Member

Kieun commented Apr 22, 2019

This issue is related to the #1199 and this is more broader cases.
We, LINE, are trying to leverage WebAuthn for our login flow and suffering some issues handling different browsers/platforms.
RPs supporting WebAuthn already may have some logics to enable or disable supporting WebAuthn by looking at user agent information.
For real word implementation, it is very hard for us to detect such supported or not-supported features from UA.
It is better to have some APIs to provide supported features for RP to easily leverage the features.

@emlun
Copy link
Member

emlun commented Apr 23, 2019

Which specific features do you need to detect?

@Kieun
Copy link
Member Author

Kieun commented Apr 23, 2019

Core features that we want to detect are followings:

  • resident key support
  • supported client extensions
  • attestation conveyance
  • require user verification

As @akshayku mentioned, for RP perspective, we need to get such information for making concrete use cases.

@jasonf1990
Copy link

jasonf1990 commented Apr 24, 2019

@akshayku and I have been discussing this on our side as well. We've been thinking of something along the lines of the following, accounting for the items mentioned above as well as some additional ones:

interface supportedCapabilities {
readonly attribute boolean areU2FDevicesSupported;
readonly attribute boolean areCTAPDevicesSupported;
readonly attribute boolean areResidentKeysSupported;
readonly attribute boolean isUserVerificationSupported;
readonly attribute boolean isTokenBindingSupported;
readonly attribute sequence transportsSupported;
readonly attribute sequence extensionsSupported;
};

partial interface PublicKeyCredential {
static Promise getSupportedCapabilities();
}

Will open a PR as well.

@emlun
Copy link
Member

emlun commented Jul 31, 2019

Removed pr-open label since #1219 was closed.

@equalsJeffH
Copy link
Contributor

closing this since we closed the PR

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.

5 participants