Bug 278339
| Summary: | Implement WebAuthn Signal API | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | pascoe <pascoe> |
| Component: | WebKit Misc. | Assignee: | pascoe <pascoe> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | brandonjorg123, k, martin.gallo, martinkellner470, pascoe, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| See Also: | https://bugs.webkit.org/show_bug.cgi?id=298951 | ||
pascoe@apple.com
This API allows RPs to signal updates to credentials to be performed on a best-effort basis.
Details: https://github.com/w3c/webauthn/pull/2093 https://github.com/w3c/webauthn/wiki/Explainer:-WebAuthn-Signal-API-explainer
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/134285651>
pascoe@apple.com
Pull request: https://github.com/WebKit/WebKit/pull/41630
EWS
Committed 291458@main (445bbfd2a3de): <https://commits.webkit.org/291458@main>
Reviewed commits have been landed. Closing PR #41630 and removing active labels.
Martin Kellner
Hey,
we have tried this out in the current Safari Technology Preview, Release 216 (Safari 18.4, WebKit 20622.1.7.2) on macOS 15.3.1.
Is it possible that the Promise returned from signalAllAcceptedCredentials does not resolve?
This is our test code:
// @ts-ignore
if (!window.PublicKeyCredential || !window.PublicKeyCredential.signalAllAcceptedCredentials) {
return undefined;
}
// @ts-ignore
console.log('Running signalAllAcceptedCredentials');
try {
// @ts-ignore
await window.PublicKeyCredential.signalAllAcceptedCredentials({
rpId: rpId,
userId: userId,
allAcceptedCredentialIds: credentialIds,
});
console.log('Signal all accepted credentials success');
} catch (e) {
console.log('Signal all accepted credentials error', e);
return;
}
What we observe:
- signalAllAcceptedCredentials is not defined on PublicKeyCredential => "Running signalAllAcceptedCredentials" is being logged
- neither "Signal all accepted credentials success" nor "Signal all accepted credentials error" are being logged => the signalAllAcceptedCredentials seems to block
Is this expected?
Kostas
This problem persists in Release STP 217.
brandonjorg123
This is still broken in Safari 26. await window.PublicKeyCredential.signalAllAcceptedCredentials() never resolves.