-
Notifications
You must be signed in to change notification settings - Fork 137
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
Proposal: GitHub username identities with the GitHub IdP #1283
Comments
As a follow-on to the above: one of the proposed solutions here was to relax Sigstore/Fulcio's current "one-SAN" rule, and allow multiple SANs: zero or more per email associated with the account, plus an This would (in theory) be backwards compatible with existing clients, but might also cause breakage (since clients may currently assume only a single SAN) and introduces some ambiguity (it's unclear which among the SANs is "preferred," or whether they're all equally valid, as well as whether they all refer to the same logical entity.) I think my personal preference here would be to preserve the "one-SAN" rule, and improve the OAuth/Dex flow page to emphasize the different kind of identity being obtained (e.g. have different sections for email vs. user identities). I'm not sure how hard that would be to do on the Dex side, through (is it possible to have the same IdP registered multiple times, but with different configurations for the resulting ID?) |
@wlynch suggested another format which would be using GHs noreply format used for private emails, We'd need to patch our instance of Dex to include dexidp/dex#2618, and would likely still need to configure Dex to add both username and user ID. |
That solution is nice, although perhaps it should be all or nothing: having it be the user's primary email in some cases rather than the Perhaps it's too much work, but IMO the ideal solution here is:
OTOH, having two separate GitHub IdP connectors might cause a lot of user confusion, even if visually separated. |
Just adding that if we do start using this -- add a test to conformance so clients can begin to handle it. |
Summarizing a thread on Slack:
Currently, when users sign with Sigstore via the GitHub IdP (i.e., federated through Dex), they get an identity token that's bound to the primary email identity for their GitHub account. This is fine in many circumstances, but not fine in others:
https://www.python.org/download/sigstore/
sigstore-python#600 (comment)This raises the question: what Sigstore used GitHub usernames from the GitHub IdP, rather than emails? This presents some advantages, as well as some challenges:
woodruffw!github.com
.As noted by @bobcallaway, this would require some changes to Dex (configuration only, possibly): we'd need to switch to
useLoginAsID
: https://dexidp.io/docs/connectors/github/#configurationcc @sethmlarson @wlynch @haydentherapper additionally as Slack convo members 🙂
The text was updated successfully, but these errors were encountered: