NAME
VM::EC2::SecurityGroup::GroupPermission - Object describing an authorized group within a security group firewall rule
SYNOPSIS
$ec2 = VM::EC2->new(...);
$sg = $ec2->describe_security_groups(-name=>'My Group');
@rules = $sg->ipPermissions;
$rule = $rules[0];
@groups = $rule->groups;
for my $g (@groups) {
$userId = $g->userId;
$name = $g>groupName;
$id = $g->groupId;
$group_object = $g->security_group;
}
DESCRIPTION
This object describes a security group whose instances are granted permission to exchange data traffic with another group of instances. It is returned by the groups() method of VM::EC2::SecurityGroup::ipPermission.
Note that this object is not the same as a bona fide VM::EC2::SecurityGroup, which has access to the group's firewall rules. This object contains just the name, id and owner of a group used within a firewall rule. For groups that belong to you, you can get the full VM::EC2::SecurityGroup object by calling the security_group() method. These details are not available to groups that belong to other accounts.
METHODS
$id = $group->groupId
Return the group's unique ID.
$id = $group->userId
Return the account ID of the owner of this group.
$id = $group->groupName
Return this group's name.
$string = $group->short_name
Return a string for use in string overloading. See "STRING OVERLOADING".
$sg = $group->security_group
For groups that belong to the current account, calls VM::EC2->describe_security_groups() to turn the group name into a VM::EC2::SecurityGroup. For groups that belong to a different account, will return undef, since describe_security_groups() on other accounts is not allowed by Amazon.
STRING OVERLOADING
When used in a string context, this object will interpolate the user id and group name in the form "userId/groupName" for groups that belong to other accounts, and the groupName alone in the case of groups that belong to you.
SEE ALSO
VM::EC2 VM::EC2::Generic VM::EC2::SecurityGroup VM::EC2::SecurityGroup::IpPermission
AUTHOR
Lincoln Stein <lincoln.stein@gmail.com>.
Copyright (c) 2011 Ontario Institute for Cancer Research
This package and its accompanying libraries is free software; you can redistribute it and/or modify it under the terms of the GPL (either version 1, or at your option, any later version) or the Artistic License 2.0. Refer to LICENSE for the full license text. In addition, please see DISCLAIMER.txt for disclaimers of warranty.