S3 - AWS IoT Core

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

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" } } ] } }

다음 사항도 참조하세요.