com.monsanto.arch.cloudformation.model.resource
AWS::Lambda::Permission
Companion object AWS::Lambda::Permission
case class AWS::Lambda::Permission(name: String, Action: String, FunctionName: Token[ResourceRef[AWS::Lambda::Function]], Principal: Token[String], EventSourceToken: Option[Token[String]] = None, SourceAccount: Option[Token[String]] = None, SourceArn: Option[Token[String]] = None, DependsOn: Option[Seq[String]] = None, Condition: Option[ConditionRef] = None) extends Resource[AWS::Lambda::Permission] with Product with Serializable
The AWS::Lambda::Permission resource associates a policy statement with a specific AWS Lambda (Lambda) function's access policy. The function policy grants a specific AWS service or application permission to invoke the function.
- name
CloudFormation logical name
- Action
The Lambda actions that you want to allow in this statement. For example, you can specify lambda:CreateFunction to specify a certain action, or use a wildcard (lambda:*) to grant permission to all Lambda actions.
- FunctionName
The name (physical ID), Amazon Resource Name (ARN), or alias ARN of the Lambda function that you want to associate with this statement. Lambda adds this statement to the function's access policy.
- Principal
The entity for which you are granting permission to invoke the Lambda function. This entity can be any valid AWS service principal, such as s3.amazonaws.com or sns.amazonaws.com, or, if you are granting cross-account permission, an AWS account ID. For example, you might want to allow a custom application in another AWS account to push events to Lambda by invoking your function.
- EventSourceToken
A unique token that must be supplied by the principal invoking the function.
- SourceAccount
The AWS account ID (without hyphens) of the source owner. For example, if you specify an S3 bucket in the SourceArn property, this value is the bucket owner's account ID. You can use this property to ensure that all source principals are owned by a specific account.
- SourceArn
The ARN of a resource that is invoking your function. When granting Amazon Simple Storage Service (Amazon S3) permission to invoke your function, specify this property with the bucket ARN as its value. This ensures that events generated only from the specified bucket, not just any bucket from any AWS account that creates a mapping to your function, can invoke the function.
- DependsOn
Declare dependencies for resources that must be created or deleted in a specific order.
- Condition
Define conditions by using the intrinsic condition functions. These conditions determine when AWS CloudFormation creates the associated resources.
- Alphabetic
- By Inheritance
- AWS::Lambda::Permission
- Serializable
- Serializable
- Product
- Equals
- Resource
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
AWS::Lambda::Permission(name: String, Action: String, FunctionName: Token[ResourceRef[AWS::Lambda::Function]], Principal: Token[String], EventSourceToken: Option[Token[String]] = None, SourceAccount: Option[Token[String]] = None, SourceArn: Option[Token[String]] = None, DependsOn: Option[Seq[String]] = None, Condition: Option[ConditionRef] = None)
- name
CloudFormation logical name
- Action
The Lambda actions that you want to allow in this statement. For example, you can specify lambda:CreateFunction to specify a certain action, or use a wildcard (lambda:*) to grant permission to all Lambda actions.
- FunctionName
The name (physical ID), Amazon Resource Name (ARN), or alias ARN of the Lambda function that you want to associate with this statement. Lambda adds this statement to the function's access policy.
- Principal
The entity for which you are granting permission to invoke the Lambda function. This entity can be any valid AWS service principal, such as s3.amazonaws.com or sns.amazonaws.com, or, if you are granting cross-account permission, an AWS account ID. For example, you might want to allow a custom application in another AWS account to push events to Lambda by invoking your function.
- EventSourceToken
A unique token that must be supplied by the principal invoking the function.
- SourceAccount
The AWS account ID (without hyphens) of the source owner. For example, if you specify an S3 bucket in the SourceArn property, this value is the bucket owner's account ID. You can use this property to ensure that all source principals are owned by a specific account.
- SourceArn
The ARN of a resource that is invoking your function. When granting Amazon Simple Storage Service (Amazon S3) permission to invoke your function, specify this property with the bucket ARN as its value. This ensures that events generated only from the specified bucket, not just any bucket from any AWS account that creates a mapping to your function, can invoke the function.
- DependsOn
Declare dependencies for resources that must be created or deleted in a specific order.
- Condition
Define conditions by using the intrinsic condition functions. These conditions determine when AWS CloudFormation creates the associated resources.
Type Members
-
type
RR = Resource[AWS::Lambda::Permission]
- Definition Classes
- Resource
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val Action: String
-
val
Condition: Option[ConditionRef]
- Definition Classes
- AWS::Lambda::Permission → Resource
-
val
DeletionPolicy: Option[DeletionPolicy]
- Definition Classes
- Resource
-
val
DependsOn: Option[Seq[String]]
- Definition Classes
- AWS::Lambda::Permission → Resource
- val EventSourceToken: Option[Token[String]]
- val FunctionName: Token[ResourceRef[AWS::Lambda::Function]]
- val Principal: Token[String]
-
val
ResourceType: String
- Definition Classes
- Resource
- val SourceAccount: Option[Token[String]]
- val SourceArn: Option[Token[String]]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
val
name: String
- Definition Classes
- AWS::Lambda::Permission → Resource
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
when(newCondition: Option[ConditionRef] = Condition): AWS::Lambda::Permission
- Definition Classes
- AWS::Lambda::Permission → Resource