Class: AWS::IAM::Group

Inherits:
Resource
  • Object
show all
Defined in:
lib/aws/iam/group.rb

Overview

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.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#arnString (readonly)

The group’s ARN (Amazon Resource Name).

Returns:

  • (String)

    the current value of arn



29
30
31
# File 'lib/aws/iam/group.rb', line 29

def arn
  @arn
end

#create_dateTime (readonly)

When the group was created.

Returns:

  • (Time)

    the current value of create_date



29
30
31
# File 'lib/aws/iam/group.rb', line 29

def create_date
  @create_date
end

#idString (readonly)

The group’s unique ID.

Returns:

  • (String)

    the current value of id



29
30
31
# File 'lib/aws/iam/group.rb', line 29

def id
  @id
end

#nameString

The group’s name.

Returns:

  • (String)

    the current value of name



29
30
31
# File 'lib/aws/iam/group.rb', line 29

def name
  @name
end

#pathString

The group’s path. Paths are used to identify which division or part of an organization the group belongs to.

Returns:

  • (String)

    the current value of path



29
30
31
# File 'lib/aws/iam/group.rb', line 29

def path
  @path
end

Instance Method Details

#deleteObject

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



68
69
70
71
# File 'lib/aws/iam/group.rb', line 68

def delete
  client.delete_group(:group_name => name)
  nil
end

#exists?Boolean

Returns true if the resource exists.

Returns:

  • (Boolean)

    Returns true if the resource exists.



64
# File 'lib/aws/iam/group.rb', line 64

def exists?; super; end

#policiesGroupPolicyCollection

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

Returns:



98
99
100
# File 'lib/aws/iam/group.rb', line 98

def policies
  GroupPolicyCollection.new(self)
end

#usersGroupUserCollection

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

Returns:



83
84
85
# File 'lib/aws/iam/group.rb', line 83

def users
  GroupUserCollection.new(self)
end