cookbook 'rbac', '= 1.0.0'
Allows delegation of service management to users with Solaris Role Based Access Control (RBAC)
cookbook 'rbac', '= 1.0.0', :supermarket
knife supermarket install rbac
knife supermarket download rbac
Role based access control
Solaris and Illumos provide sophisticated role-based access control for
delegating authorizations within the system. Using RBAC, users can be
given permissions to manage and update services without sudo.
This cookbook provides chef with LWRPs to manage RBAC and grant permissions.
At this time this cookbook ONLY manages SMF-related permissions (ie, ability
of non-priviliged users to start/stop SMF services), but in the future it may
be enhanced to support arbitrary Solaris permissions.
In order to add the RBAC LWRPs to a chef run, add the following recipe
to the run_list:
This will do no work, but will load the providers.
Defines a set of authorizations that can be applied to SMF services and
authorized to users, without actually applying them to users.
* create (default)
rbac "nginx" do action :create end
This will update the authorizations file at
with the following lines:
solaris.smf.manage.nginx:::Manage nginx Service States:: solaris.smf.value.nginx:::Change value of nginx Service::
Users who are given these authorizations can change properties of the
service as well as change its state (i.e.
svcadm disable|enable|restart|clear service
Adds the rbac definition created by
auth to the user
* add (default)
* name - for descriptive purposes and to ensure that each LWRP call is uniquely
identified in the chef run
rbac_auth "add nginx management permissions to my_user" do user "my_user" auth "nginx" end
This adds both manage and value auths to user
- separate manage auth from value auth
This cookbook has no specified dependencies.