

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 를 사용하여 메시지 콘텐츠 검색 AWS Lambda
<a name="lambda-content"></a>

Amazon WorkMail의 이메일 흐름을 관리하도록 AWS Lambda 함수를 구성한 후 Lambda를 사용하여 처리되는 이메일 메시지의 전체 콘텐츠에 액세스할 수 있습니다. Amazon WorkMail용 Lambda 시작하기에 대한 자세한 내용은 [Amazon WorkMail AWS Lambda 용 구성](lambda.md) 단원을 참조하세요.

이메일 메시지의 전체 콘텐츠에 액세스하려면 Amazon WorkMail Message Flow API에서 `GetRawMessageContent` 작업을 사용합니다. 호출 시 사용자의 Lambda 함수로 전달되는 이메일 메시지 ID가 API로 요청을 전송합니다. 그러면 API가 이메일 메시지의 전체 MIME 콘텐츠로 응답합니다. 자세한 내용은 [Amazon WorkMail API 참조](https://docs.aws.amazon.com/workmail/latest/APIReference/API_Operations_Amazon_WorkMail_Message_Flow.html)의 *Amazon WorkMail 메시지 흐름*을 참조하세요.

다음 예제는 Python 런타임 환경을 사용하는 Lambda 함수로 전체 메시지 콘텐츠를 검색하는 방법을 보여줍니다.

**작은 정보**  
에서 계정으로 Amazon WorkMail [ Hello World Lambda 함수](https://console.aws.amazon.com/lambda/home#/create/app?applicationId=arn:aws:serverlessrepo:us-east-1:489970191081:applications/workmail-hello-world-python)를 배포 AWS Serverless Application Repository 하는 것으로 시작하면 필요한 모든 리소스와 권한이 있는 Lambda 함수가 계정에 생성됩니다. 그런 다음 사용 사례에 따라 Lambda 함수에 비즈니스 로직을 추가할 수 있습니다.

```
import boto3
import email
import os

def email_handler(event, context):
    workmail = boto3.client('workmailmessageflow', region_name=os.environ["AWS_REGION"])
    msg_id = event['messageId']
    raw_msg = workmail.get_raw_message_content(messageId=msg_id)

    parsed_msg = email.message_from_bytes(raw_msg['messageContent'].read())
    print(parsed_msg)
```

전송 중인 메시지의 콘텐츠를 분석하는 자세한 방법은 GitHub의 [amazon-workmail-lambda-templates](https://github.com/aws-samples/amazon-workmail-lambda-templates) 리포지토리를 참조하십시오.

**참고**  
Amazon WorkMail Message Flow API는 전송 중인 이메일 메시지에 액세스하는 데만 사용합니다. 전송 또는 수신 후 24시간 이내에만 메시지에 액세스할 수 있습니다. 사용자의 메일박스의 메시지에 프로그래밍 방식으로 액세스하려면 Amazon WorkMail에서 지원하는 다른 프로토콜 중 하나를 사용합니다(예: IMAP 또는 EWS(Exchange Web Services)).