Mengontrol akses dengan AWS IoT FleetWise - AWS IoT FleetWise

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengontrol akses dengan AWS IoT FleetWise

Bagian berikut mencakup cara mengontrol akses ke dan dari AWS IoT FleetWise sumber daya Anda. Informasi yang mereka cakup mencakup cara memberikan akses aplikasi Anda sehingga AWS IoT FleetWise dapat mentransfer data kendaraan selama kampanye. Mereka juga menjelaskan bagaimana Anda dapat memberikan AWS IoT FleetWise akses ke bucket Amazon S3 (S3) atau database dan tabel Amazon Timestream untuk menyimpan data.

Teknologi untuk mengelola semua bentuk akses ini adalah AWS Identity and Access Management (IAM). Untuk informasi selengkapnya tentang IAM, lihat Apa itu IAM?.

Berikan AWS IoT FleetWise akses ke tujuan Amazon S3

Saat Anda menggunakan tujuan Amazon S3, AWS IoT FleetWise mengirimkan data kendaraan ke bucket S3 Anda dan secara opsional dapat menggunakan AWS KMS kunci yang Anda miliki untuk enkripsi data. Jika pencatatan kesalahan diaktifkan, kirimkan AWS IoT FleetWise juga kesalahan pengiriman data ke grup CloudWatch log dan aliran Anda. Anda harus memiliki peran IAM saat membuat aliran pengiriman.

AWS IoT FleetWise menggunakan kebijakan bucket dengan prinsipal layanan untuk tujuan S3. Untuk informasi selengkapnya tentang menambahkan kebijakan bucket, lihat Menambahkan kebijakan bucket menggunakan konsol Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Gunakan kebijakan akses berikut untuk mengaktifkan AWS IoT FleetWise akses bucket S3 Anda. Jika Anda tidak memiliki bucket S3, tambahkan s3:PutObjectAcl ke daftar tindakan Amazon S3. Ini memberi pemilik ember akses penuh ke objek yang dikirim oleh AWS IoT FleetWise. Untuk informasi selengkapnya tentang cara mengamankan akses ke objek di bucket, lihat contoh kebijakan Bucket di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "iotfleetwise.amazonaws.com" ] }, "Action": [ "s3:ListBucket" ], "Resource": "arn:aws:s3:::bucket-name" }, { "Effect": "Allow", "Principal": { "Service": [ "iotfleetwise.amazonaws.com" ] }, "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": "arn:aws:s3:::bucket-name/*", "Condition": { "StringEquals": { "aws:SourceArn": "campaign-arn", "aws:SourceAccount": "account-id" } } } ] }

Kebijakan bucket berikut adalah untuk semua kampanye di akun di suatu AWS Wilayah.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "iotfleetwise.amazonaws.com" ] }, "Action": [ "s3:ListBucket" ], "Resource": "arn:aws:s3:::bucket-name" }, { "Effect": "Allow", "Principal": { "Service": [ "iotfleetwise.amazonaws.com" ] }, "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": "arn:aws:s3:::bucket-name/*", "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:iotfleetwise:region:account-id:campaign/*", "aws:SourceAccount": "account-id" } } } ] }

Jika Anda memiliki kunci KMS yang terpasang pada bucket S3 Anda, kunci tersebut memerlukan kebijakan berikut. Untuk informasi tentang manajemen kunci, lihat Melindungi data menggunakan enkripsi sisi server dengan AWS Key Management Service kunci (SSE-KMS) di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

{ "Version": "2012-10-17", "Effect": "Allow", "Principal": { "Service": "iotfleetwise.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "key-arn" }
penting

Saat Anda membuat bucket, S3 akan membuat daftar kontrol akses default (ACL) yang memberi pemilik sumber daya kontrol penuh atas sumber daya. Jika AWS IoT tidak FleetWise dapat mengirimkan data ke S3, pastikan Anda menonaktifkan ACL pada bucket S3. Untuk informasi selengkapnya, lihat Menonaktifkan ACL untuk semua bucket baru dan menerapkan Kepemilikan Objek di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Berikan AWS IoT FleetWise akses ke tujuan Amazon Timestream

Saat Anda menggunakan tujuan Timestream, AWS IoT FleetWise mengirimkan data kendaraan ke tabel Timestream. Anda harus melampirkan kebijakan ke peran IAM untuk memungkinkan pengiriman data AWS IoT FleetWise ke Timestream.

Jika Anda menggunakan konsol untuk membuat kampanye, AWS IoT FleetWise secara otomatis akan melampirkan kebijakan yang diperlukan ke peran tersebut.

Sebelum Anda mulai, periksa yang berikut ini:

penting
  • Anda harus menggunakan AWS Wilayah yang sama saat membuat sumber daya Timestream untuk AWS IoT FleetWise. Jika Anda beralih AWS Wilayah, Anda mungkin mengalami masalah saat mengakses sumber daya Timestream.

  • AWS IoT FleetWise tersedia di AS Timur (Virginia N.) dan Eropa (Frankfurt).

  • Untuk daftar Wilayah yang didukung, lihat Titik akhir dan kuota Timestream di. Referensi Umum AWS

  • Anda harus memiliki database Timestream. Untuk tutorial, lihat Membuat database di Panduan Pengembang Amazon Timestream.

  • Anda harus memiliki tabel yang dibuat dalam database Timestream yang ditentukan. Untuk tutorial, lihat Membuat tabel di Panduan Pengembang Amazon Timestream.

Anda dapat menggunakan AWS CLI untuk membuat peran IAM dengan kebijakan kepercayaan untuk Timestream. Untuk membuat peran IAM, jalankan perintah berikut.

Untuk membuat peran IAM dengan kebijakan kepercayaan
  • Ganti TimestreamExecutionRoledengan nama peran yang Anda buat.

  • Ganti trust-policy dengan file JSON yang berisi kebijakan trust.

aws iam create-role --role-name TimestreamExecutionRole --assume-role-policy-document file://trust-policy.json
{ "Version": "2012-10-17", "Statement": [ { "Sid": "timestreamTrustPolicy", "Effect": "Allow", "Principal": { "Service": "iotfleetwise.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceArn": [ "arn:aws:iotfleetwise:region:account-id:campaign/campaign-name" ], "aws:SourceAccount": [ "account-id" ] } } } ] }

Buat kebijakan izin untuk memberikan izin AWS FleetWise IoT untuk menulis data ke Timestream. Untuk membuat kebijakan izin, jalankan perintah berikut.

Untuk membuat kebijakan izin
  • Ganti AWSIoTFleetwiseAccessTimestreamPermissionsPolicydengan nama kebijakan yang Anda buat.

  • Ganti permissions-policy dengan nama file JSON yang berisi kebijakan izin.

aws iam create-policy --policy-name AWSIoTFleetwiseAccessTimestreamPermissionsPolicy --policy-document file://permissions-policy.json
{ "Version": "2012-10-17", "Statement": [ { "Sid": "timestreamIngestion", "Effect": "Allow", "Action": [ "timestream:WriteRecords", "timestream:Select", "timestream:DescribeTable" ], "Resource": "table-arn" }, { "Sid": "timestreamDescribeEndpoint", "Effect": "Allow", "Action": [ "timestream:DescribeEndpoints" ], "Resource": "*" } ] }
Untuk melampirkan kebijakan izin ke peran IAM Anda
  1. Dari output, salin Nama Sumber Daya Amazon (ARN) dari kebijakan izin.

  2. Untuk melampirkan kebijakan izin IAM ke peran IAM Anda, jalankan perintah berikut.

    • Ganti permissions-policy-arndengan ARN yang Anda salin di langkah sebelumnya.

    • Ganti TimestreamExecutionRoledengan nama peran IAM yang Anda buat.

    aws iam attach-role-policy --policy-arn permissions-policy-arn --role-name TimestreamExecutionRole

Untuk informasi selengkapnya, lihat Manajemen akses untuk AWS sumber daya di Panduan Pengguna IAM.