-
Notifications
You must be signed in to change notification settings - Fork 298
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
ACL for mcs #123
ACL for mcs #123
Conversation
Please run |
109d505
to
531be75
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we might change the text in README.md to avoid confusions. Also we could add a link to the page where all the privileges list for mcs. Everything else looks good.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please rebase
i don't see any new changes |
This PR sets the initial version of the ACL for mcs, the idea behind this is to start using the principle of least privileges when assigning policies to users when creating users through mcs, currently mcsAdmin policy uses admin:* and s3:* and by default a user with that policy will have access to everything, if want to limit that we can create a policy with least privileges. We need to start validating explicitly if users has acccess to an specific endpoint based on IAM policy actions. In this first version every endpoint (you can see it as a page to), defines a set of well defined admin/s3 actions to work properly, ie: ``` // corresponds to /groups endpoint used by the groups page var groupsActionSet = iampolicy.NewActionSet( iampolicy.ListGroupsAdminAction, iampolicy.AddUserToGroupAdminAction, //iampolicy.GetGroupAdminAction, iampolicy.EnableGroupAdminAction, iampolicy.DisableGroupAdminAction, ) // corresponds to /policies endpoint used by the policies page var iamPoliciesActionSet = iampolicy.NewActionSet( iampolicy.GetPolicyAdminAction, iampolicy.DeletePolicyAdminAction, iampolicy.CreatePolicyAdminAction, iampolicy.AttachPolicyAdminAction, iampolicy.ListUserPoliciesAdminAction, ) ``` With that said, for this initial version, now the sessions endpoint will return a list of authorized pages to be render on the UI, on subsequent prs we will add this verification of authorization via a server middleware.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
This PR sets the initial version of the ACL for mcs, the idea behind
this is to start using the principle of least privileges when assigning
policies to users, currently mcsAdmin policy uses admin:* and s3:*, we
are assuming users have access to everything which is not good.
We need to start validating explicitly if users has acccess to an
specific endpoint based on IAM policy actions.
In this first version every endpoint (you can see it as a page to),
defines a set of well defined admin/s3 actions to work properly, ie:
With that said, for this initial version, now the sessions endpoint will
return a list of authorized pages to be render on the UI, on subsequent
prs we will add this verification of authorization via a server
middleware.