RESOLVED FIXED 234112
[WebAuthn] Provide SPI to export/import local credentials
https://bugs.webkit.org/show_bug.cgi?id=234112
Summary [WebAuthn] Provide SPI to export/import local credentials
pascoe@apple.com
Reported 2021-12-09 17:01:16 PST
Provide SPI to export/import local credentials.
Attachments
Patch (17.81 KB, patch)
2021-12-10 07:10 PST, pascoe@apple.com
no flags
Patch (19.00 KB, patch)
2022-01-25 16:20 PST, pascoe@apple.com
no flags
Patch (21.22 KB, patch)
2022-01-25 17:41 PST, pascoe@apple.com
no flags
Patch (20.79 KB, patch)
2022-01-26 17:26 PST, pascoe@apple.com
ews-feeder: commit-queue-
Patch for landing (20.85 KB, patch)
2022-01-26 17:32 PST, pascoe@apple.com
no flags
pascoe@apple.com
Comment 1 2021-12-09 17:01:32 PST
pascoe@apple.com
Comment 2 2021-12-10 07:10:28 PST
pascoe@apple.com
Comment 3 2022-01-21 12:00:20 PST
Reminder to make these SPIs synchronous.
pascoe@apple.com
Comment 4 2022-01-25 16:20:13 PST
Darin Adler
Comment 5 2022-01-25 17:05:36 PST
Comment on attachment 449981 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=449981&action=review > Source/WebCore/Modules/webauthn/WebAuthenticationConstants.h:80 > const char LocalAuthenticatiorAccessGroup[] = "com.apple.webkit.webauthn"; Misspelled word "authenticator" here. > Source/WebCore/Modules/webauthn/WebAuthenticationConstants.h:87 > +const char privateKeyKey[] = "priv"; > +const char keyTypeKey[] = "key_type"; > +const char keySizeKey[] = "key_size"; > +const char relyingPartyKey[] = "rp"; > +const char applicationTagKey[] = "tag"; constexpr?
pascoe@apple.com
Comment 6 2022-01-25 17:41:11 PST
Brent Fulgham
Comment 7 2022-01-26 15:45:08 PST
Comment on attachment 449987 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=449987&action=review r=me > Source/WebCore/Modules/webauthn/WebAuthenticationConstants.h:80 > +constexpr const char LocalAuthenticatorAccessGroup[] = "com.apple.webkit.webauthn"; Thank you for fixing that typo! > Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:397 > + *error = [NSError errorWithDomain:WKErrorDomain code:WKErrorMalformedCredential userInfo:nil]; This little check and assignment is repeated so many times it might be nice as a static function: static void createMalformedCredentialErrorIfNecessary(NSError **error) > Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:488 > + *error = [NSError errorWithDomain:WKErrorDomain code:WKErrorDuplicateCredential userInfo:nil]; ... or, perhaps a helper that takes the WKError type: static void createNSErrorFromWKErrorIfNecessary(NSError **error, WKErrorCode errorCode) { if (error) *error = [NSError errorWithDomain:WKErrorDomain code: errorCode userInfo:nil]; }
pascoe@apple.com
Comment 8 2022-01-26 17:26:32 PST
pascoe@apple.com
Comment 9 2022-01-26 17:32:33 PST
Created attachment 450089 [details] Patch for landing
EWS
Comment 10 2022-01-31 08:56:58 PST
Committed r288816 (246592@main): <https://commits.webkit.org/246592@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 450089 [details].
Note You need to log in before you can comment on or make changes to this bug.