class AWS::IAM::Group

Represents a group of users. Groups don’t directly interact with AWS; only users do. The main reason to create groups is to collectively assign permissions to the users so they can do their jobs. For example, you could have a group called Admins and give that group the types of permissions admins typically need.

Public Class Methods

new(name, options = {}) click to toggle source

@private

# File lib/aws/iam/group.rb, line 28
def initialize(name, options = {})
  options[:name] = name
  super
end

Public Instance Methods

delete() click to toggle source

Deletes the group. The group must not contain any users or have any attached policies.

# File lib/aws/iam/group.rb, line 69
def delete
  client.delete_group(:group_name => name)
  nil
end
exists?() click to toggle source

(see AWS::IAM::Resource#exists?)

# File lib/aws/iam/group.rb, line 65
def exists?; super; end
policies() click to toggle source

Provides access to the policies associated with the group. For example:

# get the policy named "ReadOnly"
group.policies["ReadOnly"]

# remove all policies associated with the group
group.policies.clear

@return [GroupPolicyCollection] An object representing all the

policies associated with the group.
# File lib/aws/iam/group.rb, line 99
def policies
  GroupPolicyCollection.new(self)
end
users() click to toggle source

Provides access to the users in the group. For example:

# get the names of all the users in the group
group.users.map(&:name)

# remove all users from the group
group.users.clear

@return [GroupUserCollection] An object representing all the

users in the group.
# File lib/aws/iam/group.rb, line 84
def users
  GroupUserCollection.new(self)
end

Protected Instance Methods

resource_identifiers() click to toggle source

@private

# File lib/aws/iam/group.rb, line 105
def resource_identifiers
  [[:group_name, name]]
end