Skip to content
This repository has been archived by the owner on Feb 8, 2018. It is now read-only.

add google authentication #32

Closed
chadwhitacre opened this issue Jun 7, 2012 · 21 comments
Closed

add google authentication #32

chadwhitacre opened this issue Jun 7, 2012 · 21 comments

Comments

@chadwhitacre
Copy link
Contributor

Should be able to authenticate with a Google+ account. If already authenticated, should associated Google+ profile with existing Gittip participant account.

This is near and dear to my heart because Guido uses Google+, and doesn't use Github or Facebook or Twitter.

@joonas
Copy link
Contributor

joonas commented Jan 18, 2013

I decided to take a look back in time to see what we've got open, and came across this.

So given the current situation, how difficult do you think implementing this would be? I assume this should be implemented with Google's OAuth2 for Login?

@lyndsysimon
Copy link
Contributor

Profile routing would be an issue. Both Twitter and Github have usernames that are both URL-friendly and human-friendly; Google doesn't.

/on/google/104460120585566250078/ doesn't quite have the ring to it that /on/github/lyndsysimon/ has.

@chadwhitacre
Copy link
Contributor Author

@joonas I would expect this to mean some refactoring of gittip.elsewhere, but hopefully not as much as when we added Twitter support. If you'd like to take this on, go for it (assign it to yourself per usual).

@lyndsysimon Yeah, I think we have to work with what Google gives us, unfortunately.

@chadwhitacre
Copy link
Contributor Author

@joonas I would approach this by copy/pasting /on/twitter to /on/google and going from there.

@lyndsysimon
Copy link
Contributor

I've begun working on this issue at PyCon - you can see my progress on my fork.

At this point, I've got it hooked up so that the /on/google// pages display properly. Next up is OAuth support.

@chadwhitacre
Copy link
Contributor Author

Awesome, thanks @lyndsysimon! :D

@ghost ghost assigned lyndsysimon Mar 18, 2013
@lyndsysimon
Copy link
Contributor

I'm taking a little bit of a break on this, but have made some significant progress. I've abstracted out the "elsewhere providers" concept into a single class, which will allow us to add additional providers without modifying the file structure.

To-dos at this point include:

  • Implementing actions other than 'opt-in' on the OAuth response handler
  • Finalizing architecture between gittip.elsewhere.ServiceElsewhere and AccountElsewhere. That could be by merging the two classes, or all account-level methods could be moved from Service to Account. I've not decided yet.
  • Make sure to add a flag for gittip_login_provider, False by default.

My fork, linked above, has my most recent code and will be updated at the end of each hack session I work on this.

@chadwhitacre
Copy link
Contributor Author

Thanks, Lyndsy! This is an important piece of infrastructure.

@chadwhitacre
Copy link
Contributor Author

+1 from @ElijahLynn via Twitter.

@ElijahLynn
Copy link

Thanks Chad!

@zbynekwinkler
Copy link
Contributor

+1

@chadwhitacre
Copy link
Contributor Author

+1 from @eric-s-raymond at #1481 (comment).

@duckinator duckinator mentioned this issue Jan 15, 2014
6 tasks
@pjf
Copy link
Contributor

pjf commented Jan 30, 2014

+1 from yours truly. Many of my supporters are non-technical folk, and Google/Facebook are their most accessible means of using gittip.

@chadwhitacre
Copy link
Contributor Author

+1 from @CCsolidarity on Twitter.

@rohitpaulk rohitpaulk self-assigned this Sep 21, 2014
Changaco added a commit that referenced this issue Sep 24, 2014
Add Google as an elsewhere. fixes #32
@ElijahLynn
Copy link

image

@rohitpaulk
Copy link
Contributor

@ElijahLynn - We're aware of this and double checked the implementation from our side. Looks like google is taking a while to propagate the changes. IRC

If this isn't solved by tomorrow, we'll investigate further.

@chadwhitacre chadwhitacre reopened this Sep 25, 2014
@chadwhitacre
Copy link
Contributor Author

Reopening till the bugs are squished.

I've configured the app and am not seeing the 401 anymore. Now I get a 500:

Internal Server Error, program!
google lookup failed with 403

@rohitpaulk
Copy link
Contributor

Are you sure you've added the Google+ API?

googledev

@chadwhitacre
Copy link
Contributor Author

That did it! 💃

@ElijahLynn
Copy link

Works great now! Plus I really like how if you sign in with it and realize you need to link it to your other account you just sign up and link it and it asks you if you want to transfer it and it gives you a screenshot of how it will look, excellent UX!!!

@chadwhitacre
Copy link
Contributor Author

Thanks @ElijahLynn! Glad it worked for you! :-)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

8 participants