Contact emailssmcgr...@chromium.org

ExplainerNone

Specification
https://w3c.github.io/webauthn/#publickey-credentials-create-feature

Summary

This feature allows web developers to create WebAuthn[0] credentials (that
is, "publickey" credentials, aka passkeys) in cross-origin iframes. Two
conditions are required for this new ability: 1. The iframe has a
publickey-credentials-create-feature permission policy. 2. The iframe has
transient user activation. This will allow developers to create passkeys in
embedded scenarios, such as after an identity step-up flow where the
Relying Party is providing a federated identity experience. [0]:
https://w3c.github.io/webauthn/

Blink componentBlink>WebAuthentication
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWebAuthentication>

TAG reviewNone

TAG review statusNot applicable

Risks
Interoperability and Compatibility

There is only minor interoperability risk if other browsers do not adopt
this change. In a browser that does not support credential creation inside
a cross-origin iframe, attempting to call navigator.credentials.create
results in an asynchronous-but-immediate error message indicating that
creation cannot happen. This means that a developer can create a fallback
flow of: 1. Have some button for the user, e.g. "register passkey", in the
iframe 2. When the user clicks it, attempt to create a credential 3. If it
fails due to an incompatible browser, instead use the click to open a
pop-up window in which one *can* do the registration - a much poorer user
flow but one that works.

*Gecko*: No signal

*WebKit*: No signal No formal signal, but note that folks from Apple were
against the proposal when discussed in the WebAuthn WG

*Web developers*: Positive developer feedback on
https://github.com/w3c/webauthn/issues/1656 (one example -
https://github.com/w3c/webauthn/issues/1656#issuecomment-890819845). No
known negative developer feedback

*Other signals*:

Security

To avoid malicious iframes from creating credentials (attempting to trick
the user in some way), this feature requires both (a) a new permission
policy set on the frame, and (b) a user gesture (so the user must click or
interact with the iframe in some way).

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that
it has potentially high risk for Android WebView-based applications?

None

Debuggability

Existing devtools support suffices for this feature

Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, ChromeOS, Android, and Android WebView)?Yes

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?Yes

In review: https://github.com/web-platform-tests/wpt/pull/43729 (Chrome Dev
passes 5/5 added tests)

Flag name on chrome://flagsNone

Finch feature nameWebAuthAllowCreateInCrossOriginFrame

Requires code in //chrome?False

Tracking bughttps://bugs.chromium.org/p/chromium/issues/detail?id=1420639

Estimated milestones
Shipping on desktop 122
DevTrial on desktop 122
Shipping on Android 122
DevTrial on Android 122
Anticipated spec changes

Already landed in the spec, no remaining changes expected.

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5175677674586112

Links to previous Intent discussionsIntent to prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADY3Maf7EmNUH1zYSi7DimKd5NfddYY3navNx3-ELPyeqHpPMw%40mail.gmail.com

This intent message was generated by Chrome Platform Status
<https://chromestatus.com/>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADY3MacSSuysQWizFRwJv95%2BV9epzBDtyX-nf08RR-872TBPnQ%40mail.gmail.com.

Reply via email to