-
-
Notifications
You must be signed in to change notification settings - Fork 8
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
The OAuth integration seems to ask for vast permissions #120
Comments
OK, the specific scope we ask for is
The description “Access public repositories” is therefore incredibly vague and misleading. If I'm reading this page right, we don't actually need this scope if all we're doing is reading the code of a public repo. And I hope that's all that we're doing. |
To the best of my knowledge (me and @confused-Techie were the ones discussing this at the time): We asked for as little permissions to be put on the token as we could (to the best of our understanding), in order to enable all of what Important: Only the user stores their token (locally). We read it (you send it) at account creation or at "login" on the web, to check who you are. Also: we read it (you send it) each time an authenticated We need to know you have It was our intent to ask for the minimum scopes needed, but if someone can prove it all works with less, we'll definitely ask for less. I suppose the way to practically test which scopes are needed is to make a PAT with less and see how much of |
And yeah, the OAuth tokens (equivalent to "classic" PATs) are pretty disappointing in how coarse-grained the permissions are. I don't recall if our infrastructure understands the fine-grained tokens, though. We leaned pretty hard on the notion that we don't hold onto the tokens on the server. And on the user side of things, |
@steelbrain, I don't know if @DeeDeeG’s explanation quite puts you at ease. But if this is all true, it would at least suggest that we're not asking for anything more than what |
Oh, also, if you "log in" to the Pulsar package website, and view your account webpage, the token is stored locally by your browser storage during the "login," and shown to you from your local browser storage on that page. Per what I recall @confused-Techie saying about this before. (Initial account creation also implies a one-time login, IIRC.) This is not to say that you never send the token to us, anytime you authenticate to us you send the token, but our server code is all open-source, and we're making a conscious effort not to do anything weird or careless with them. (EDIT to clarify/reiterate: And yes, we are deliberately not persisting them on our servers.) Essentially we use the scopes to check what kind of permissions you have over on GitHub, and we mirror what we let you do based on what GitHub thinks you should be able to do at the relevant repositories you're trying to do stuff with. We believed it was safer to let GitHub essentially handle the security part and not try to roll our own solution. |
Thanks in advance for your bug report!
Where is the URL that this occurs?
https://web.pulsar-edit.dev/login
What's your issue?
I haven't seen this because I've already authorized Pulsar, but @steelbrain reported being presented with this screen when they tried to log in:
I'm certain we don't need permissions this broad, and the authorization that exists in my GitHub settings asks for much less:
Do we have any idea what'd explain the disparity here?
Someone who's reluctant to give us this much access (i.e., most people) could instead create a PAT, but it'd be lovely if the documentation explained exactly which permissions are required when creating the token; otherwise it's just a game of trial and error.
Which OS/Browser/Version does this happen on?
No response
Steps to Reproduce/Additional Details:
No response
The text was updated successfully, but these errors were encountered: