Class: AWS::S3::AccessControlList::Grantee
- Inherits:
-
Object
- Object
- AWS::S3::AccessControlList::Grantee
- Includes:
- AWS::S3::ACLObject
- Defined in:
- lib/aws/s3/access_control_list.rb
Overview
Represents a user who is granted some kind of permission through a Grant. There are three ways to specify a grantee:
You can specify the canonical user ID, for example. When you read an ACL from S3, all grantees will be identified this way, and the display_name attribute will also be provided.
Grantee.new(:canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef")
You can specify the e-mail address of an AWS customer, for example:
Grantee.new(:amazon_customer_email => '[email protected]')
You can specify a group URI, for example:
Grantee.new(:group_uri => 'http://acs.amazonaws.com/groups/global/AllUsers')
For more details about group URIs, see: http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html
When constructing a grantee, you must provide a value for exactly one of the following attributes:
amazon_customer_email
canonical_user_id
group_uri
Constant Summary collapse
- SIGNAL_ATTRIBUTES =
[ :amazon_customer_email, :canonical_user_id, :group_uri, :uri, ]
Instance Attribute Summary collapse
-
#amazon_customer_email ⇒ String
The e-mail address of an AWS customer.
-
#canonical_user_id ⇒ String
The canonical user ID of an AWS customer.
-
#display_name ⇒ String
The display name associated with the grantee.
-
#group_uri ⇒ String
A URI that identifies a particular group of users.
Instance Method Summary collapse
-
#validate! ⇒ Object
Raises an exception unless this object is valid according to S3's published ACL schema.
Methods included from AWS::S3::ACLObject
included, #to_s, #to_xml, #valid?
Instance Attribute Details
#amazon_customer_email ⇒ String
The e-mail address of an AWS customer.
103 104 105 |
# File 'lib/aws/s3/access_control_list.rb', line 103 def amazon_customer_email @amazon_customer_email end |
#canonical_user_id ⇒ String
The canonical user ID of an AWS customer.
103 104 105 |
# File 'lib/aws/s3/access_control_list.rb', line 103 def canonical_user_id @canonical_user_id end |
#display_name ⇒ String
The display name associated with the grantee. This is provided by S3 when reading an ACL.
103 104 105 |
# File 'lib/aws/s3/access_control_list.rb', line 103 def display_name @display_name end |
#group_uri ⇒ String
A URI that identifies a particular group of users.
103 104 105 |
# File 'lib/aws/s3/access_control_list.rb', line 103 def group_uri @group_uri end |
Instance Method Details
#validate! ⇒ Object
Raises an exception unless this object is valid according to S3's published ACL schema.
120 121 122 123 124 125 126 |
# File 'lib/aws/s3/access_control_list.rb', line 120 def validate! attr = signal_attribute raise "missing amazon_customer_email, canonical_user_id, "+ "or group_uri" unless attr raise "display_name is invalid with #{attr}" if attr != :canonical_user_id and display_name end |