Class: Aws::Lambda::Types::AddPermissionRequest
- Inherits:
-
Struct
- Object
- Struct
- Aws::Lambda::Types::AddPermissionRequest
- Includes:
- Structure
- Defined in:
- lib/aws-sdk-lambda/types.rb
Overview
When making an API call, you may pass AddPermissionRequest data as a hash:
{
function_name: "FunctionName", # required
statement_id: "StatementId", # required
action: "Action", # required
principal: "Principal", # required
source_arn: "Arn",
source_account: "SourceOwner",
event_source_token: "EventSourceToken",
qualifier: "Qualifier",
revision_id: "String",
}
Instance Attribute Summary collapse
-
#action ⇒ String
The AWS Lambda action you want to allow in this statement.
-
#event_source_token ⇒ String
A unique token that must be supplied by the principal invoking the function.
-
#function_name ⇒ String
The name of the lambda function.
-
#principal ⇒ String
The principal who is getting this permission.
-
#qualifier ⇒ String
Specify a version or alias to add permissions to a published version of the function.
-
#revision_id ⇒ String
An optional value you can use to ensure you are updating the latest update of the function version or alias.
-
#source_account ⇒ String
This parameter is used for S3 and SES.
-
#source_arn ⇒ String
The Amazon Resource Name of the invoker.
-
#statement_id ⇒ String
A unique statement identifier.
Instance Attribute Details
#action ⇒ String
The AWS Lambda action you want to allow in this statement. Each Lambda action is a string starting with ‘lambda:` followed by the API name . For example, `lambda:CreateFunction`. You can use wildcard (`lambda:*`) to grant permission for all AWS Lambda actions.
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |
#event_source_token ⇒ String
A unique token that must be supplied by the principal invoking the function. This is currently only used for Alexa Smart Home functions.
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |
#function_name ⇒ String
The name of the lambda function.
**Name formats**
-
**Function name** - ‘MyFunction`.
-
**Function ARN** - ‘arn:aws:lambda:us-west-2:123456789012:function:MyFunction`.
-
**Partial ARN** - ‘123456789012:function:MyFunction`.
The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |
#principal ⇒ String
The principal who is getting this permission. The principal can be an AWS service (e.g. ‘s3.amazonaws.com` or `sns.amazonaws.com`) for service triggers, or an account ID for cross-account access. If you specify a service as a principal, use the `SourceArn` parameter to limit who can invoke the function through that service.
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |
#qualifier ⇒ String
Specify a version or alias to add permissions to a published version of the function.
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |
#revision_id ⇒ String
An optional value you can use to ensure you are updating the latest update of the function version or alias. If the ‘RevisionID` you pass doesn’t match the latest ‘RevisionId` of the function or alias, it will fail with an error message, advising you to retrieve the latest function version or alias `RevisionID` using either GetFunction or GetAlias
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |
#source_account ⇒ String
This parameter is used for S3 and SES. The AWS account ID (without a hyphen) of the source owner. For example, if the ‘SourceArn` identifies a bucket, then this is the bucket owner’s account ID. You can use this additional condition to ensure the bucket you specify is owned by a specific account (it is possible the bucket owner deleted the bucket and some other AWS account created the bucket). You can also use this condition to specify all sources (that is, you don’t specify the ‘SourceArn`) owned by a specific account.
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |
#source_arn ⇒ String
The Amazon Resource Name of the invoker.
If you add a permission to a service principal without providing the source ARN, any AWS account that creates a mapping to your function ARN can invoke your Lambda function.
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |
#statement_id ⇒ String
A unique statement identifier.
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/aws-sdk-lambda/types.rb', line 175 class AddPermissionRequest < Struct.new( :function_name, :statement_id, :action, :principal, :source_arn, :source_account, :event_source_token, :qualifier, :revision_id) include Aws::Structure end |