Lambda 함수를 사용하여 Amazon SNS 주제에 메시지를 게시하려면 어떻게 해야 하나요?

2분 분량
0

AWS Lambda 함수에서 Amazon Simple Notification Service(SNS) 주제에 메시지를 게시하고 싶습니다.

해결 방법

다음 단계에 따라 Lambda 함수를 사용하여 Amazon SNS 주제에 메시지를 전송하세요.

**참고:**이 문서의 예에서는 Python 런타임을 사용하지만 원하는 Lambda 런타임을 사용할 수 있습니다.

1.    Amazon SNS 주제를 생성합니다.

2.    Lambda 함수를 생성합니다.

3.    Lambda 함수에서 Lambda 실행 역할에 다음과 비슷한 SNS 메시지를 게시할 권한이 있는지 확인하세요.

참고: your-region, your-account-numberyour-topic-name을 자신의 변수로 바꾸세요.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "PublishSNSMessage",
      "Effect": "Allow",
      "Action": "sns:Publish",
      "Resource": "arn:aws:sns:<your-region>:<your-account-number>:<your-topic-name>"
    }
  ]
}

4.     코드 탭을 선택합니다. 그런 다음 ** 코드 소스**에서 Publish Boto3 작업에 대한 다음 코드를 복사하여 코드 편집기에 붙여넣습니다.

import json
import boto3
client = boto3.client('sns')
def lambda_handler(event, context):
   response = client.publish(TopicArn='arn:aws:sns:<region>:<account-number>:<topic-name>',Message="Test message")
   print("Message published")
   return(response)

5.    Lambda 함수를 테스트합니다.

자신의 Lambda 함수가 Amazon Virtual Private Cloud(VPC)에 연결되어 있다면 다음 중 하나를 수행하세요.

자신의 Lambda 함수에 인터넷 액세스가 필요하다면 인터넷 액세스를 허용해야 합니다. 자세한 내용은 Amazon VPC에 연결된 Lambda 함수에 인터넷 액세스 권한을 부여하려면 어떻게 해야 하나요?를 참조하세요.

또는

사설 네트워크의 경우 동일한 VPC에 Amazon SNS용 Amazon VPC 엔드포인트를 생성하세요. 자세한 내용은 Amazon SNS용 Amazon VPC 엔드포인트 생성을 참조하세요.

관련 정보

내 Amazon SNS 주제에 Lambda 함수를 구독하려고 할 때 권한 부여 오류가 발생하는 이유는 무엇인가요?

AWS 공식
AWS 공식업데이트됨 일 년 전
댓글 없음

관련 콘텐츠