8000 Rethink User management · Issue #111 · Matterwiki/Matterwiki · GitHub
[go: up one dir, main page]

Skip to content
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

Rethink User management #111

Open
krishnagopinath opened this issue Aug 4, 2017 · 7 comments
Open

Rethink User management #111

krishnagopinath opened this issue Aug 4, 2017 · 7 comments
Assignees
Milestone

Comments

@krishnagopinath
Copy link
Collaborator
krishnagopinath commented Aug 4, 2017

At the moment the app has some problems with its user management.

  • There is no way for the user to reset the password if they forgot the password.
  • Admins make passwords for the user.
  • There seems to be only ONE admin. This could cause account lockdown and stuff, which is unnecessary.
@krishnagopinath
Copy link
Collaborator Author
krishnagopinath commented Nov 13, 2017

I've got some ideas as to how we could do this:

Option 1

This could look confusing, but the way this is done is pretty standard for user management..

  • When matterwiki is setup, we could setup an install script that

    • asks for default DB information (hostname, uname, password)
    • creates the first admin user for the system in the CLI.. the user who sets it up will be prompted for email, password and a login will be created for that user.
    • the user could then login and invite more folks! (lets call this admin1 for now)
  • When the admin logs in,

    • they could invite more users (they could choose roles)
    • invited users could get a link that will take them to a setup screen where they can type a password and all that

Option 2

  • Use github, slack or some OAuth setup that would already have a team (slack group or github organisation) and all folks in the team would get access to stuff

  • This workflow does look simpler but we'd lose some control over the user maagement.. like role based permissions could get wonky

thoughts, @nshntarora ?

@nshntarora
Copy link
Member

I'd vote for option 2.

Other than the workflow being simpler, my reason is:
We're not trying to build Matterwiki as a platform in itself, it works great and satisfies its existence by integrating into another platform like Slack or GitHub or your company Google Apps account. Plus, we will have to integrate with Slack at some point if we want to become a vital part of our users' workflow.

Having said that, I'm not sure how it will mess up the permissions. Can you please elaborate some scenarios we might face issues in?

@krishnagopinath
Copy link
Collaborator Author
krishnagopinath commented Nov 13, 2017

Alrighty that makes sense! We could start working on sign ins with Slack, GitHub and GApps for now.

My problems with this is that we might not be able to have granular control on roles, but now that I think about it, I might be totally wrong 😀

@rja907
Copy link
rja907 commented Dec 31, 2017

I have experience with Google OAuth. Should I get started with that?

@krishnagopinath
Copy link
Collaborator Author

Of course! We could then deal with Slack, GitHub, Atlassian etc.

@nshntarora
Copy link
Member

@rja907 Thanks a lot of showing interest. Would be great if you could pick this up.

Just start working on it, and create a PR, link it to this issue so that everyone else could keep track and maybe help you out along the way.

If you need any kind of help in understanding the codebase, or anything else, just send me an email on na[dot]nishantarora[at]gmail.com or contact me on Twitter (I'm nshntarora)

@mlgarchery
Copy link

+1 for option 2. A lot of wiki have also a LDAP support, I personally use this method for managing users

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

No branches or pull requests

4 participants
0