jaredhanson / jaredhanson/passport-github

Does passport-github provide secure authentication?

Open
#62 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
535
Forks
290
PR merge metrics
No merged PRs in 30d

Description

The README says this module "authenticates users using a GitHub account and OAuth 2.0 tokens", but sites like https://oauth.net/articles/authentication/ warn against using OAuth tokens for authentication:

> OAuth APIs do not provide any mechanism of audience restriction for the returned information. In other words, it is very possible to take a naive client, hand it the (valid) token from another client, and have the naive client treat this as a "log in" event. After all, the token is valid and the call to the API will return valid user information. The problem is of course that the user hasn't done anything to prove that they're present, and in this case they haven't even authorized the naive client.

Is `passport-github` safe to use in spite of this warning?
I asked essentially the same question here: http://security.stackexchange.com/questions/140595/is-it-safe-for-users-of-my-api-to-sign-in-with-github-using-passport-github

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the README statement that passport-github authenticates users with GitHub and OAuth 2.0 tokens, then read the linked OAuth authentication warning and Security Stack Exchange question. Determine whether the README needs clarification about the security model; done means the authentication claim and its limitations are documented accurately.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, nodejs
Domain
authentication, security
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.