MQ - AWS Serverless Application Model

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

MQ

El objeto que describe un tipo de fuente de evento de MQ. Para obtener más información, consulta Uso de Lambda con Amazon MQ en la Guía para desarrolladores de AWS Lambda.

AWS Serverless Application Model (AWS SAM) genera un recurso AWS::Lambda::EventSourceMapping cuando se establece este tipo de evento.

nota

Para tener una cola de Amazon MQ en una nube privada virtual (VPC) que se conecte a una función de Lambda en una red pública, el rol de ejecución de la función debe incluir los siguientes permisos:

  • ec2:CreateNetworkInterface

  • ec2:DeleteNetworkInterface

  • ec2:DescribeNetworkInterfaces

  • ec2:DescribeSecurityGroups

  • ec2:DescribeSubnets

  • ec2:DescribeVpcs

Para obtener más información, consulta Permisos del rol de ejecución en la Guía para desarrolladores de AWS Lambda.

Sintaxis

Para declarar esta entidad en su plantilla de AWS SAM, use la siguiente sintaxis:

Propiedades

BatchSize

El número máximo de elementos que se recuperan en un único lote.

Tipo: entero

Obligatorio: no

predeterminado: 100

Compatibilidad con CloudFormation: esta propiedad se transfiere directamente a la propiedad BatchSize de un recurso AWS::Lambda::EventSourceMapping.

Mínimo: 1

Máximo: 10000

Broker

El nombre de recurso de Amazon (ARN) del agente de Amazon MQ.

Tipo: cadena

Obligatorio: sí

Compatibilidad con CloudFormation: esta propiedad se transfiere directamente a la propiedad EventSourceArn de un recurso AWS::Lambda::EventSourceMapping.

DynamicPolicyName

De forma predeterminada, el nombre de la política AWS Identity and Access Management de (IAM) es SamAutoGeneratedAMQPolicy para ser compatible con versiones anteriores. Especifica true para que utilice un nombre generado automáticamente para su política de IAM. Este nombre incluirá el ID lógico del origen del evento de Amazon MQ.

nota

Si utiliza más de un origen de eventos de Amazon MQ, especifique true para que no se dupliquen los nombres de las políticas de IAM.

Tipo: Booleano

Obligatorio: no

Valor predeterminado: false

Compatibilidad con CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente CloudFormation.

Enabled

Si es true, la asignación de orígenes de eventos está activa. Establézcalo en false para poner en pausa el sondeo y la invocación.

Tipo: Booleano

Obligatorio: no

Compatibilidad con CloudFormation: esta propiedad se transfiere directamente a la propiedad Enabled de un recurso AWS::Lambda::EventSourceMapping.

FilterCriteria

Un objeto que define los criterios que determinan si Lambda debe procesar un evento o no. Para obtener más información, consulta Filtrado de eventos de AWS Lambda en la Guía para desarrolladores de AWS Lambda.

Tipo: FilterCriteria

Obligatorio: no

Compatibilidad con CloudFormation: esta propiedad se transfiere directamente a la propiedad FilterCriteria de un recurso AWS::Lambda::EventSourceMapping.

KmsKeyArn

El nombre de recurso de Amazon (ARN) de la clave de que se utilizará para cifrar la información de este evento.

Tipo: cadena

Obligatorio: no

Compatibilidad con CloudFormation: esta propiedad se transfiere directamente a la propiedad KmsKeyArn de un recurso AWS::Lambda::EventSourceMapping.

MaximumBatchingWindowInSeconds

La cantidad de tiempo máxima para recopilar registros antes de invocar la función, en segundos.

Tipo: Entero

Obligatorio: no

Compatibilidad con CloudFormation: esta propiedad se transfiere directamente a la propiedad MaximumBatchingWindowInSeconds de un recurso AWS::Lambda::EventSourceMapping.

Queues

Nombre de la cola de destino del agente de Amazon MQ que se va a consumir.

Tipo: lista

Obligatorio: sí

Compatibilidad con CloudFormation: esta propiedad se transfiere directamente a la propiedad Queues de un recurso AWS::Lambda::EventSourceMapping.

SecretsManagerKmsKeyId

El identificador de clave AWS Key Management Service (AWS KMS) de una contraseña gestionada por el cliente desde AWS Secrets Manager. Se requiere cuando se utiliza una clave gestionada por el cliente de Secrets Manager con una función de ejecución de Lambda que no incluye el permiso de kms:Decrypt.

El valor de esta propiedad es un UUID. Por ejemplo: 1abc23d4-567f-8ab9-cde0-1fab234c5d67.

Tipo: cadena

Obligatorio: condicional

Compatibilidad con CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente CloudFormation.

SourceAccessConfigurations

Una matriz del protocolo de autenticación para un host virtual. Especifica esto mediante el tipo de datos SourceAccessConfigurations.

Para el tipo de origen del evento de MQ, los únicos tipos de configuración válidos son BASIC_AUTH y VIRTUAL_HOST.

  • BASIC_AUTH – el secreto de Secrets Manager que almacena las credenciales del agente. Para este tipo, la credencial debe tener el siguiente formato: {"username": "your-username", "password": "your-password"}. Solo se permite un objeto de tipo BASIC_AUTH.

  • VIRTUAL_HOST – el nombre del host virtual en el agente de RabbitMQ. Lambda utilizará este host de RabbitMQ como el origen de eventos. Solo se permite un objeto de tipo VIRTUAL_HOST.

Tipo: lista

Obligatorio: sí

Compatibilidad con CloudFormation: esta propiedad se transfiere directamente a la propiedad SourceAccessConfigurations de un recurso AWS::Lambda::EventSourceMapping.

Ejemplos

Origen de eventos de Amazon MQ

A continuación, se muestra un ejemplo de un tipo de origen de evento MQ para un agente de Amazon MQ.

YAML

Events: MQEvent: Type: MQ Properties: Broker: arn:aws:mq:us-east-2:123456789012:broker:MyBroker:b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9 Queues: List of queues SourceAccessConfigurations: - Type: BASIC_AUTH URI: arn:aws:secretsmanager:us-east-1:01234567890:secret:MyBrokerSecretName BatchSize: 200 Enabled: true