Roles and permissions within projects and apps in NeetoDeploy

Projects roles and permissions

Permissions

Viewer

Developer

Admin

View review apps

Manage review apps settings

Manage review apps

Manage (create/delete) apps

Github integration

Apps roles and permissions

To add groups/members to the app, they must first be project members. Only existing project members will appear in the list when you add them to the app.

Permissions

Viewer

Developer

Admin

View metrics and logs

Manually scale dynos

Set environment variables

Access security settings

Access console

Enable or disable maintenance mode

Manually deploy app

Manage addons

Manage dynos

Manage buildpacks

Manage app settings

  • Teams => Groups

  • Remove access level to groups (In groups, I should see only team members, there should be no access level control on groups).

How to remove someone from App/Project/Group/Workspace?

  • If App admin removes the team member/group from the app, that team member access will be removed from the app.

  • If Project admin removes the team member/group from the project, that team member/group will be removed from project as well as all the apps asscoiated with that project. (Apps)

  • If admin removes someone from the group, he will be removed from the all the projects and apps asscoiated to him. (Project -> Apps)

  • If admin removes someone from the team member, he will be removed from that workspace (will be removed from Groups -> Projects -> Apps)

TLDR: Team members -> Groups -> Project -> Apps

Decisions to be made

  • Should we create separate permissions in Admin panel > Manage roles > View project, apps roles, or can anyone see who has which role?

  • The project admin should not allow the project to leave if he is the only project admin and there are other team members in the project (for security concerns).

Version 2

  • In V2, we can allow the creation of a role based on the permissions the admin wants (Customization in roles, such as NeetoCal) within the project.

image
  • Auto revoke (remove automatically in apps/projects) in set days.