기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
S3
S3(s3
) 작업은 MQTT 메시지의 데이터를 Amazon Simple Storage Service(Amazon S3) 버킷에 기록합니다.
요구 사항
이 규칙 작업은 다음 요구 사항을 충족해야 합니다.
-
s3:PutObject
작업을 수행하기 위해 를 수임할 AWS IoT 수 있는 IAM 역할입니다. 자세한 내용은 필요한 AWS IoT 액세스 권한 규칙 부여 단원을 참조하십시오.AWS IoT 콘솔에서 가 이 규칙 작업을 수행하도록 허용할 역할을 선택하거나 생성할 수 AWS IoT 있습니다.
-
AWS KMS customermanaged를 사용하여 Amazon S3에 저장된 데이터를 암호화하는 경우, 서비스에는 호출자를 대신하여 AWS KMS key 를 사용할 AWS KMS key 수 있는 권한이 있어야 합니다. 자세한 내용은 Amazon Simple Storage Service 개발자 안내서의 AWS 관리형 AWS KMS keys 및 고객 관리 AWS KMS keys형을 참조하세요.
파라미터
이 작업으로 AWS IoT 규칙을 생성할 때는 다음 정보를 지정해야 합니다.
bucket
-
데이터를 기록할 Amazon S3 버킷입니다.
대체 템플릿 : API 및 AWS CLI 만 지원
cannedacl
-
(선택 사항) 객체 키로 식별ACL되는 객체에 대한 액세스를 제어하는 Amazon S3 캔입니다. 허용되는 값을 포함한 자세한 내용은 사전 준비를 ACL참조하세요.
대체 템플릿 지원: 아니요
key
-
데이터가 기록되는 파일의 경로입니다.
이 파라미터가
${topic()}/${timestamp()}
이고 규칙이 주제가some/topic
인 메시지를 수신하는 예를 고려하세요. 현재 타임스탬프가1460685389
인 경우 이 작업은 S3 버킷의some/topic
폴더에 있는1460685389
라는 파일에 데이터를 씁니다.참고
정적 키를 사용하는 경우 는 규칙이 호출할 때마다 단일 파일을 AWS IoT 덮어씁니다. 메시지 타임스탬프 또는 다른 고유한 메시지 식별자를 사용하는 것이 좋습니다. 그러면 각 메시지가 수신될 때마다 Amazon S3에 새 파일이 저장됩니다.
대체 템플릿 지원: 예
roleArn
-
Amazon S3 버킷에 대한 액세스를 허용하는 IAM 역할입니다. 자세한 내용은 요구 사항 단원을 참조하십시오.
대체 템플릿 지원: 아니오
예시
다음 JSON 예제에서는 AWS IoT 규칙에서 S3 작업을 정의합니다.
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "s3": { "bucketName": "amzn-s3-demo-bucket", "cannedacl": "public-read", "key": "${topic()}/${timestamp()}", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_s3" } } ] } }
다음 사항도 참조하세요.
-
Amazon Simple Storage Service 사용 설명서의 Amazon S3란 무엇입니까?