-
Notifications
You must be signed in to change notification settings - Fork 385
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
Allow to link a provider account (facebook, twitter, etc.) when the user is logged. #160
Comments
I'd like this feature as well. I'll take a stab at implementation. |
I also think that this would benefit from some redesign. Right now, each account is a separate account. If you log in with a password, or via Facebook, or via Twitter, its three separate accounts. A way to link them, or to provide alternate logins for the same account would be better. Also, under the current method an additional table is used. This is annoying because the method only involves two fields which are currently on a one to one relationship with the user account. (That is the authentications table stores two fields for each record and each record relates to one and only one user record.) It would be more convenient to have that information directly in the user record. |
However, if you move to a multiple oauth type system per user then the extra table is necessary, as it is then one user to many third-party accounts. I was thinking of maintaining the table structure and providing a method to 'link' an account. I've started on it, and it works. But, I still need to add tests, etc. |
I was wondering whether anyone was working on this still? iterion, you said you had it working, is it ready for release? |
I'm also interested in this one. It seems like a simple one, but it's a bit trickier once you get to tweak it. Any feedbacks? @iterion, can you please put some stuff on Gist or smth? |
Other projects have taken my focus away from this for the time being, nothing worth sharing yet. I'm trying to decide how to best fit it in with Sorcery's API. I think I'll add the method: I also am thinking about
Which would handle those checks for you. Thoughts? I'll try to do more with it today and get something up for everyone. |
@iterion |
Cool, I was also thinking about just changing |
Yeah, and I don't think that users could link an account without logging in. =) |
Take a look guys, let me know how things look for you. Haven't added tests yet. |
@iterion this looks cool! It would be nice though, if you could add methods to list/unlink added accounts. Not that it's a huge deal, but still... you should be able to safely remove attached account(s). =) |
On this same note: Is there anything special I need to do to implement Google's OpenID auth? I see in the README a note that only Twitter and Facebook are done. I was just wondering if there is anything special about Google Accounts. |
@safarista, nothing special... AFAICT, it's fairly easy to obtain key, and you can even test it via playground. But you may want to use up-to-date sorcery provided by @NoamB, since it supports multiple providers now. |
Necropost, but being able to use multiple auth sources is important to my current use-case for sorcery. What's the current status on this? |
@athix no clue. Looks dead, but if you want to put in a PR I'll have a look. |
* Add Auth0 provider to external Used github/google providers as reference, as well as the Omniauth/Auth0 strategy. * Add Auth0 initializer template * Require new auth0 provider file * Add specs for Auth0 provider * Update Auth0 to use sub instead of user_id https://community.auth0.com/t/authentication-api-userinfo-missing-the-user-id/8747/3 * Add 'sub' to spec hash to fix Auth0 specs * Update changelog
Currently links a provider account when creating a user from an external provider. This is fine for a first user registration. But if I already created an account from Facebook, and I need to link my Twitter account I can not.
This is useful because it allows the user to link your other accounts. And then I could login from any of them.
The text was updated successfully, but these errors were encountered: