教程:配置主题订阅以调用 Lambda 函数 - Amazon GameLift

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

教程:配置主题订阅以调用 Lambda 函数

您可以使用发布到您的亚马逊SNS主题的事件通知来调用 Lambda 函数。配置匹配器时,请务必将通知目标设置为SNS主题的通知目标ARN。

以下 AWS CloudFormation 模板将订阅名为的SNS主题配置为调用名MyFlexMatchEventTopic为的 Lambda 函数。FlexMatchEventHandlerLambdaFunction该模板创建了一个IAM权限策略,允许 Amazon GameLift 写入该SNS主题。然后,该模板为该SNS主题添加了调用 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