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

- (String) arn (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

- (Time) create_date (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

- (String) id (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

- (String) name

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

- (String) path

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

- (Object) delete

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

- (Boolean) exists?

Returns:

  • (Boolean)

    Returns true if the resource exists.

  • (Boolean)

    Returns true if the resource exists.



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

def exists?; super; end

- (GroupPolicyCollection) policies

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

- (GroupUserCollection) users

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