-
Notifications
You must be signed in to change notification settings - Fork 1.6k
[WebAuthn] Always include pinAuth if we have it #47161
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
[WebAuthn] Always include pinAuth if we have it #47161
Conversation
EWS run on current version of this PR (hash 7b59a64) |
Vector<uint8_t> cborCmd = encodeSilentGetAssertion(options.rpId, requestData().hash, m_batches[m_currentBatch], std::nullopt); | ||
std::optional<PinParameters> pinParameters; | ||
if (!m_pinAuth.isEmpty()) | ||
pinParameters = PinParameters { pin::kProtocolVersion, m_pinAuth }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit, to benefit from in-place construction
pinParameters = PinParameters { pin::kProtocolVersion, m_pinAuth }; | |
pinParameters.emplace(pin::kProtocolVersion, m_pinAuth); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will do this before landing, but I am opting not to use EWS resources on it now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually going to do this in a separate change to be safe: https://bugs.webkit.org/show_bug.cgi?id=295045
rdar://154214974 https://bugs.webkit.org/show_bug.cgi?id=294950 Reviewed by Charlie Wolfe. In https://bugs.webkit.org/show_bug.cgi?id=293805, we introduced credential preflight for getAssertion to avoid hitting maxMsgSize. However, whenever a key requires a pin, we do not pass the pinAuth for the first silent assertion, which causes issues with some keys. This patch starts to pass the pinAuth in this case, fixing the issue. * Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp: (WebKit::CtapAuthenticator::getAssertion): Canonical link: https://commits.webkit.org/296675@main
7b59a64
to
adb5969
Compare
Committed 296675@main (adb5969): https://commits.webkit.org/296675@main Reviewed commits have been landed. Closing PR #47161 and removing active labels. |
adb5969
7b59a64
🛠 🧪 merge