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. @attr [String] name The group's name. @attr_reader [String] id The group's unique ID. @attr_reader [Time] create_date When the group was created. @attr_reader [String] arn The group's ARN (Amazon Resource Name). @attr [String] path The group's path. Paths are used to identify
which division or part of an organization the group belongs to.
@api private
# File lib/aws/iam/group.rb, line 34 def initialize(name, options = {}) options[:name] = name super end
Deletes the group. The group must not contain any users or have any attached policies.
# File lib/aws/iam/group.rb, line 68 def delete client.delete_group(:group_name => name) nil end
(see AWS::IAM::Resource#exists?)
# File lib/aws/iam/group.rb, line 64 def exists?; super; end
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 98 def policies GroupPolicyCollection.new(self) end
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 83 def users GroupUserCollection.new(self) end
@api private
# File lib/aws/iam/group.rb, line 104 def resource_identifiers [[:group_name, name]] end