Configuración de una suscripción a un tema para invocar una función de Lambda - Amazon GameLift Servers

Configuración de una suscripción a un tema para invocar una función de Lambda

Puede invocar una función de Lambda mediante notificaciones de evento publicadas en su tema de Amazon SNS. Al configurar el emparejador, asegúrese de establecer el destino de notificación en un ARN del tema de SNS.

La siguiente plantilla AWS CloudFormation configura una suscripción a un tema de SNS denominado MyFlexMatchEventTopic para invocar una función de Lambda llamada FlexMatchEventHandlerLambdaFunction. La plantilla crea una política de permisos de IAM que permite a Amazon GameLift Servers escribir en el tema de SNS. A continuación, la plantilla añade permisos para que el tema de SNS invoque la función de Lambda.

FlexMatchEventTopic: Type: "AWS::SNS::Topic" Properties: KmsMasterKeyId: alias/aws/sns #Enables server-side encryption on the topic using an AWS managed key Subscription: - Endpoint: !GetAtt FlexMatchEventHandlerLambdaFunction.Arn Protocol: lambda TopicName: MyFlexMatchEventTopic FlexMatchEventTopicPolicy: Type: "AWS::SNS::TopicPolicy" DependsOn: FlexMatchEventTopic Properties: PolicyDocument: Version: "2012-10-17" Statement: - Effect: Allow Principal: Service: gamelift.amazonaws.com Action: - "sns:Publish" Resource: !Ref FlexMatchEventTopic Topics: - Ref: FlexMatchEventTopic FlexMatchEventHandlerLambdaPermission: Type: "AWS::Lambda::Permission" Properties: Action: "lambda:InvokeFunction" FunctionName: !Ref FlexMatchEventHandlerLambdaFunction Principal: sns.amazonaws.com SourceArn: !Ref FlexMatchEventTopic