Strider-CD / strider

Open Source Continuous Integration & Deployment Server
http://strider-cd.github.io/
4.6k stars 431 forks source link

allow authentication through external services such as github, ldap, etc #207

Open jaredly opened 11 years ago

jaredly commented 11 years ago

This would be done by creating a new type of plugin, an "auth" plugin. The auth plugin would specify the passport strategy for authentication.

It might just be as simple as that.

niallo commented 11 years ago

Unfortunately I'm not sure it's quite that simple. Passport can let us authenticate requests, but we also need a way to integrate with the login / registration flow. For example to enable LDAP logins via username/password. We also need to make sure that persisting config will work for an externally authenticated user. Conceptually this should just be a matter of creating stub user objects which are linked to the external auth provider, but we need to make sure the API makes that easy.

jaredly commented 11 years ago

do we need to support multiple concurrent methods? I was just thinking of having one at a time.

On 10/14/13, niallo notifications@github.com wrote:

Unfortunately I'm not sure it's quite that simple. Passport can let us authenticate requests, but we also need a way to integrate with the login / registration flow. For example to enable LDAP logins via username/password. We also need to make sure that persisting config will work for an externally authenticated user. Conceptually this should just be a matter of creating stub user objects which are linked to the external auth provider, but we need to make sure the API makes that easy.


Reply to this email directly or view it on GitHub: https://github.com/Strider-CD/strider/issues/207#issuecomment-26267478

niallo commented 11 years ago

That's fine, but we'd still need a way to integrate with the login and registration flow. Not sure Passport alone gives us enough to do that?

jaredly commented 11 years ago

don't know -- we'll have to investigate.

On Tue, Oct 15, 2013 at 8:57 AM, niallo notifications@github.com wrote:

That's fine, but we'd still need a way to integrate with the login and registration flow. Not sure Passport alone gives us enough to do that?

— Reply to this email directly or view it on GitHubhttps://github.com/Strider-CD/strider/issues/207#issuecomment-26341704 .

flinn commented 10 years ago

Has anyone taken a look at this recently? Just wondering, as I'm taking a stab at it myself right now...Swapping out the LocalStrategy for LdapStrategy certainly doesn't work -- That was my first thought, before finding this issue on GitHub...And yes, it fails due to the reasons Niallo described.

I'm trying to determine how much stuff is dependent upon that persistent config now and seeing if I can stub my way around it for starters. I'll let y'all know what I find.

sebas5384 commented 10 years ago

Yeah we could focus in using passport and implement the github login/register flow at first. LDAP and others is going to just install other modules like https://www.npmjs.org/package/passport-ldapauth

xocasdashdash commented 8 years ago

is someone working on integrating this feature?

knownasilya commented 8 years ago

Not that I'm aware of. Feel free to submit a PR or link to a plugin you are working on.