Module | Chef::Mixin::Securable
In: | lib/chef/mixin/securable.rb

### Methods

group inherits mode owner rights_attribute user

### Public Class methods

rights_attribute(name)

### rights_attribute

"meta-method" for dynamically creating rights attributes on resources.

Multiple rights attributes can be declared. This enables resources to have multiple rights attributes with separate runtime states.

For example, +Chef::Resource::RemoteDirectory+ supports different rights on the directories and files by declaring separate rights attributes for each (rights and files_rights).

#### User Level API

Given a resource that calls

      rights_attribute(:rights)

Then the resource DSL could be used like this:

      rights :read, ["Administrators","Everyone"]
      rights :deny, "Pinky"
      rights :full_control, "Users", :applies_to_children => true
      rights :write, "John Keiser", :applies_to_children => :containers_only, :applies_to_self => false, :one_level_deep => true

#### Internal Data Structure

rights attributes support multiple right declarations in a single resource block—the data will be merged into a single internal hash.

The internal representation is a hash with the following keys:

- `:permissions`: Integer of Windows permissions flags, 1..2^32

or one of `[:full_control, :modify, :read_execute, :read, :write]`

- `:principals`: String or Array of Strings represnting usernames on

the system.

- `:applies_to_children` (optional): Boolean
- `:applies_to_self` (optional): Boolean
- `:one_level_deep` (optional): Boolean

### Public Instance methods

group(arg=nil)
inherits(arg=nil)
mode(arg=nil)
owner(arg=nil)
user(arg=nil)

Alias for owner

[Validate]