-
Notifications
You must be signed in to change notification settings - Fork 38
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
Resolve issues of accessing settings object in parallel steps #93
base: main
Are you sure you want to change the base?
Conversation
Overall the changes in this PR look fine, and it looks like it addresses the "accessing settings object in parallel steps" issues that exist in credman itself, though it does not address everything that webauthn needs. A key item is that the create a credential alg needs to pass the current setting's object's origin to More complexly, WRT webauthn, and credman upon return from webauthn's [[create]]() method, @domenic wrote in w3c/webauthn#472 (comment):
Presently webauthn, in #createCredential's current step 26, does "mess with actual JS globals" in constructing a new PublicKeyCredential object to return to it's caller (credman's create a credential). Given @domenic's feedback, and in looking at WebAssembly/design#1093 (now merged into here: https://github.com/WebAssembly/design/blob/master/Web.md), it seems to me the way to fix this up is to:
I'll work on a PR for credman to do this, building on this PR. for webauthn, I'll update the existing PR w3c/webauthn#498 pls let me know if I'm missing something.... |
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.
A key item is that the create a credential alg needs to pass the current setting's object's origin to [[create]]()
, since webauthn's [[create]]() method (aka #createCredential) plugs in there and needs the relevant origin
.
It looks to me like credman's [[CollectFromCredentialStore]](options) internal method was modified to be passed origin
rather than modifying credman's [[create]]() internal method.
An adjunct thought/question that occurs to me is:
- perhaps all of credman's Credential Internal Methods ought to take an
origin
parameter? Tho, perhaps not all, e.g.[[store]]()
?
see also further comments/thoughts in #93 (comment)
PR #100 works on addressing the items in the above review |
shall we close this PR since it is effectively superseded by the now-merged PR #100 ? |
Solves #92
Preview | Diff