Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengontrol akses dengan Amazon Data Firehose
Bagian berikut mencakup cara mengontrol akses ke dan dari sumber daya Amazon Data Firehose Anda. Informasi yang mereka cakup mencakup cara memberikan akses aplikasi Anda sehingga dapat mengirim data ke aliran Firehose Anda. Mereka juga menjelaskan bagaimana Anda dapat memberikan Amazon Data Firehose akses ke bucket Amazon Simple Storage Service (Amazon S3), cluster Amazon Redshift, atau OpenSearch kluster Layanan Amazon, serta izin akses yang Anda perlukan jika Anda menggunakan Datadog, Dynatrace,, MongoDB, New Relic, Splunk, atau Sumo LogicMonitor Logic sebagai tujuan Anda. Terakhir, Anda akan menemukan panduan topik ini tentang cara mengonfigurasi Amazon Data Firehose sehingga dapat mengirimkan data ke tujuan yang termasuk dalam akun yang berbeda AWS . Teknologi untuk mengelola semua bentuk akses ini adalah AWS Identity and Access Management (IAM). Untuk informasi lebih lanjut tentangIAM, lihat Apa ituIAM? .
Daftar Isi
- Berikan akses ke sumber daya Firehose Anda
- Berikan akses Firehose ke kluster Amazon pribadi Anda MSK
- Izinkan Firehose untuk mengambil peran IAM
- Berikan akses Firehose AWS Glue untuk konversi format data
- Berikan akses Firehose ke tujuan Amazon S3
- Berikan akses Firehose ke tujuan Apache Iceberg Tables
- Berikan akses Firehose ke tujuan Amazon Redshift
- Berikan akses Firehose ke tujuan Layanan publik OpenSearch
- Berikan akses Firehose ke tujuan OpenSearch Layanan di VPC
- Berikan akses Firehose ke tujuan publik Tanpa Server OpenSearch
- Berikan akses Firehose ke tujuan Tanpa OpenSearch Server di VPC
- Berikan akses Firehose ke tujuan Splunk
- Mengakses Splunk di VPC
- Menelan log VPC aliran ke Splunk menggunakan Amazon Data Firehose
- Mengakses Snowflake atau titik akhir HTTP
- Berikan akses Firehose ke tujuan Snowflake
- Mengakses Snowflake di VPC
- Berikan akses Firehose ke tujuan titik akhir HTTP
- Pengiriman lintas akun dari Amazon MSK
- Pengiriman lintas akun ke tujuan Amazon S3
- Pengiriman lintas akun ke tujuan OpenSearch Layanan
- Menggunakan tanda untuk mengontrol akses
Berikan akses ke sumber daya Firehose Anda
Untuk memberikan akses aplikasi Anda ke aliran Firehose Anda, gunakan kebijakan yang mirip dengan contoh ini. Anda dapat menyesuaikan API operasi individual yang Anda berikan akses dengan memodifikasi Action
bagian, atau memberikan akses ke semua operasi dengan"firehose:*"
.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "firehose:DeleteDeliveryStream", "firehose:PutRecord", "firehose:PutRecordBatch", "firehose:UpdateDestination" ], "Resource": [ "arn:aws:firehose:
region
:account-id
:deliverystream/delivery-stream-name
" ] } ] }
Berikan akses Firehose ke kluster Amazon pribadi Anda MSK
Jika sumber aliran Firehose Anda adalah MSK klaster Amazon pribadi, gunakan kebijakan yang mirip dengan contoh ini.
{ "Version": "2012-10-17", "Statement": [ { "Principal": { "Service": [ "firehose.amazonaws.com" ] }, "Effect": "Allow", "Action": [ "kafka:CreateVpcConnection" ], "Resource": "cluster-arn" } ] }
Anda harus menambahkan kebijakan seperti ini ke kebijakan berbasis sumber daya kluster untuk memberikan izin kepada prinsipal layanan Firehose untuk menjalankan operasi Amazon. MSK CreateVpcConnection
API
Izinkan Firehose untuk mengambil peran IAM
Bagian ini menjelaskan izin dan kebijakan yang memberikan Amazon Data Firehose akses untuk mencerna, memproses, dan mengirimkan data dari sumber ke tujuan.
catatan
Jika Anda menggunakan konsol untuk membuat aliran Firehose dan memilih opsi untuk membuat peran baru, AWS lampirkan kebijakan kepercayaan yang diperlukan ke peran tersebut. Jika Anda ingin Amazon Data Firehose menggunakan IAM peran yang ada atau jika Anda membuat peran sendiri, lampirkan kebijakan kepercayaan berikut ke peran tersebut sehingga Amazon Data Firehose dapat menerimanya. Edit kebijakan untuk mengganti account-id
dengan ID AWS akun Anda. Untuk informasi tentang cara mengubah hubungan kepercayaan suatu peran, lihat Mengubah Peran.
Amazon Data Firehose menggunakan IAM peran untuk semua izin yang dibutuhkan aliran Firehose untuk memproses dan mengirimkan data. Pastikan bahwa kebijakan kepercayaan berikut dilampirkan pada peran tersebut sehingga Amazon Data Firehose dapat menerimanya.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "", "Effect": "Allow", "Principal": { "Service": "firehose.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "account-id" } } }] }
Kebijakan ini menggunakan kunci konteks sts:ExternalId
kondisi untuk memastikan bahwa hanya aktivitas Amazon Data Firehose yang berasal dari AWS akun Anda yang dapat mengambil peran ini. IAM Untuk informasi selengkapnya tentang mencegah penggunaan IAM peran yang tidak sah, lihat Masalah wakil yang membingungkan di Panduan IAM Pengguna.
Jika Anda memilih Amazon MSK sebagai sumber untuk aliran Firehose, Anda harus menentukan IAM peran lain yang memberikan izin Amazon Data Firehose untuk menyerap data sumber dari klaster Amazon yang ditentukan. MSK Pastikan bahwa kebijakan kepercayaan berikut dilampirkan pada peran tersebut sehingga Amazon Data Firehose dapat menerimanya.
{ "Version": "2012-10-17", "Statement": [ { "Principal": { "Service": [ "firehose.amazonaws.com" ] }, "Effect": "Allow", "Action": "sts:AssumeRole" } ] }
Pastikan peran ini yang memberikan izin Amazon Data Firehose untuk mencerna data sumber dari klaster MSK Amazon yang ditentukan memberikan izin berikut:
{ "Version": "2012-10-17", "Statement": [{ "Effect":"Allow", "Action": [ "kafka:GetBootstrapBrokers", "kafka:DescribeCluster", "kafka:DescribeClusterV2", "kafka-cluster:Connect" ], "Resource": "CLUSTER-ARN" }, { "Effect":"Allow", "Action": [ "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration", "kafka-cluster:ReadData" ], "Resource": "TOPIC-ARN" }] }
Berikan akses Firehose AWS Glue untuk konversi format data
Jika aliran Firehose Anda melakukan konversi format data, Amazon Data Firehose mereferensikan definisi tabel yang disimpan. AWS Glue Untuk memberikan Amazon Data Firehose akses yang diperlukan AWS Glue, tambahkan pernyataan berikut ke kebijakan Anda. Untuk informasi tentang cara menemukan tabel, lihat Menentukan Sumber Daya AWS ARNs Glue. ARN
[{ "Effect": "Allow", "Action": [ "glue:GetTable", "glue:GetTableVersion", "glue:GetTableVersions" ], "Resource": "
table-arn
" }, { "Sid": "GetSchemaVersion", "Effect": "Allow", "Action": [ "glue:GetSchemaVersion" ], "Resource": ["*"] }]
Kebijakan yang disarankan untuk mendapatkan skema dari registri skema tidak memiliki batasan sumber daya. Untuk informasi selengkapnya, lihat IAMcontoh deserializer di Panduan Pengembang. AWS Glue
Berikan akses Firehose ke tujuan Amazon S3
Saat Anda menggunakan tujuan Amazon S3, Amazon Data Firehose mengirimkan data ke bucket S3 Anda dan secara opsional dapat menggunakan AWS KMS kunci yang Anda miliki untuk enkripsi data. Jika pencatatan kesalahan diaktifkan, Amazon Data Firehose juga mengirimkan kesalahan pengiriman data ke grup CloudWatch log dan aliran Anda. Anda harus memiliki IAM peran saat membuat aliran Firehose. Amazon Data Firehose mengasumsikan IAM peran tersebut dan mendapatkan akses ke bucket, kunci, dan grup CloudWatch log serta stream yang ditentukan.
Gunakan kebijakan akses berikut untuk mengaktifkan Amazon Data Firehose mengakses bucket dan kunci S3 Anda. AWS KMS
Jika Anda tidak memiliki bucket S3, tambahkan s3:PutObjectAcl
ke daftar tindakan Amazon S3. Ini memberi pemilik bucket akses penuh ke objek yang dikirimkan oleh Amazon Data Firehose.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:region
:account-id
:stream/stream-name
" }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:region
:account-id
:key/key-id
" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.region
.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket/prefix
*" } } }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:log-group-name
:log-stream:log-stream-name
" ] }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetFunctionConfiguration" ], "Resource": [ "arn:aws:lambda:region
:account-id
:function:function-name
:function-version
" ] } ] }
Kebijakan di atas juga memiliki pernyataan yang memungkinkan akses ke Amazon Kinesis Data Streams. Jika Anda tidak menggunakan Kinesis Data Streams sebagai sumber data, Anda dapat menghapus pernyataan tersebut. Jika Anda menggunakan Amazon MSK sebagai sumber Anda, maka Anda dapat mengganti pernyataan itu dengan yang berikut:
{ "Sid":"", "Effect":"Allow", "Action":[ "kafka:GetBootstrapBrokers", "kafka:DescribeCluster", "kafka:DescribeClusterV2", "kafka-cluster:Connect" ], "Resource":"arn:aws:kafka:{{mskClusterRegion}}:{{mskClusterAccount}}:cluster/{{mskClusterName}}/{{clusterUUID}}" }, { "Sid":"", "Effect":"Allow", "Action":[ "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration", "kafka-cluster:ReadData" ], "Resource":"arn:aws:kafka:{{mskClusterRegion}}:{{mskClusterAccount}}:topic/{{mskClusterName}}/{{clusterUUID}}/{{mskTopicName}}" }, { "Sid":"", "Effect":"Allow", "Action":[ "kafka-cluster:DescribeGroup" ], "Resource":"arn:aws:kafka:{{mskClusterRegion}}:{{mskClusterAccount}}:group/{{mskClusterName}}/{{clusterUUID}}/*" }
Untuk informasi selengkapnya tentang mengizinkan AWS layanan lain mengakses AWS sumber daya Anda, lihat Membuat Peran untuk Mendelegasikan Izin ke AWS Layanan di IAMPanduan Pengguna.
Untuk mempelajari cara memberikan Amazon Data Firehose akses ke tujuan Amazon S3 di akun lain, lihat. Pengiriman lintas akun ke tujuan Amazon S3
Berikan akses Firehose ke tujuan Apache Iceberg Tables
Anda harus memiliki IAM peran sebelum membuat aliran Firehose dan Apache Iceberg Tables menggunakan. AWS Glue Gunakan langkah-langkah berikut untuk membuat kebijakan dan IAM peran. Firehose mengasumsikan IAM peran ini dan melakukan tindakan yang diperlukan.
-
Masuk ke AWS Management Console dan buka IAM konsol di https://console.aws.amazon.com/iam/
. -
Buat kebijakan dan pilih JSONdi editor kebijakan.
-
Tambahkan kebijakan sebaris berikut yang memberikan izin Amazon S3 seperti izin baca/tulis, izin untuk memperbarui tabel di katalog data, dll.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:GetTable", "glue:GetDatabase", "glue:UpdateTable" ], "Resource": [ "arn:aws:glue:
<region>:<aws-account-id>
:catalog", "arn:aws:glue:<region>:<aws-account-id>
:database/*", "arn:aws:glue:<region>:<aws-account-id>
:table/*/*" ] }, { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:<region>:<aws-account-id>
:stream/<stream-name>
" }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:<region>:<aws-account-id>
:key/<key-id>
" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.region.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket
/prefix*" } } }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:<region>:<aws-account-id>
:log-group:<log-group-name>
:log-stream:<log-stream-name>
" ] }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetFunctionConfiguration" ], "Resource": [ "arn:aws:lambda:<region>:<aws-account-id>
:function:<function-name>:<function-version>
" ] } ] }Kebijakan ini memiliki pernyataan yang memungkinkan akses ke Amazon Kinesis Data Streams, menjalankan fungsi Lambda, dan akses ke kunci. KMS Jika Anda tidak menggunakan salah satu sumber daya ini, Anda dapat menghapus pernyataan masing-masing.
Jika pencatatan kesalahan diaktifkan, Firehose juga mengirimkan kesalahan pengiriman data ke grup CloudWatch log dan aliran Anda. Untuk ini, Anda harus mengonfigurasi grup log dan nama aliran log. Untuk grup log dan nama aliran log, lihatPantau Amazon Data Firehose Menggunakan Log CloudWatch .
-
Dalam kebijakan inline, ganti
amzn-s3-demo-bucket
dengan nama bucket Amazon S3 Anda, aws-account-id dan Wilayah dengan Akun AWS nomor dan Wilayah sumber daya yang valid.catatan
Peran ini memberikan izin ke semua database dan tabel dalam katalog data Anda. Jika mau, Anda dapat memberikan izin hanya untuk tabel dan database tertentu.
-
Setelah Anda membuat kebijakan, buka IAMkonsol
dan buat IAM peran dengan Layanan AWSsebagai jenis entitas Tepercaya. -
Untuk Service atau use case, pilih Kinesis. Untuk kasus Penggunaan pilih Kinesis Firehose.
-
Di halaman berikutnya, pilih kebijakan yang dibuat pada langkah sebelumnya untuk dilampirkan ke peran ini. Pada halaman ulasan, Anda akan menemukan kebijakan kepercayaan yang telah dilampirkan pada peran ini yang memberikan izin ke layanan Firehose untuk mengambil peran ini. Saat Anda membuat peran, Amazon Data Firehose dapat menganggapnya melakukan operasi yang diperlukan pada bucket S3 AWS Glue dan S3.
Berikan akses Firehose ke tujuan Amazon Redshift
Lihat hal berikut saat Anda memberikan akses ke Amazon Data Firehose saat menggunakan tujuan Amazon Redshift.
Topik
IAMkebijakan peran dan akses
Saat Anda menggunakan tujuan Amazon Redshift, Amazon Data Firehose mengirimkan data ke bucket S3 Anda sebagai lokasi perantara. Secara opsional dapat menggunakan AWS KMS kunci yang Anda miliki untuk enkripsi data. Amazon Data Firehose kemudian memuat data dari bucket S3 ke cluster yang disediakan Amazon Redshift atau workgroup Amazon Redshift Serverless. Jika pencatatan kesalahan diaktifkan, Amazon Data Firehose juga mengirimkan kesalahan pengiriman data ke grup CloudWatch log dan aliran Anda. Amazon Data Firehose menggunakan nama pengguna dan kata sandi Amazon Redshift yang ditentukan untuk mengakses klaster yang disediakan atau grup kerja Tanpa Server Amazon Redshift, dan IAM menggunakan peran untuk mengakses bucket, kunci, grup log, dan aliran yang ditentukan. CloudWatch Anda harus memiliki IAM peran saat membuat aliran Firehose.
Gunakan kebijakan akses berikut untuk mengaktifkan Amazon Data Firehose mengakses bucket dan kunci S3 Anda. AWS KMS
Jika Anda tidak memiliki bucket S3, tambahkan s3:PutObjectAcl
ke daftar tindakan Amazon S3, yang memberi pemilik bucket akses penuh ke objek yang dikirimkan oleh Amazon Data Firehose. Kebijakan ini juga memiliki pernyataan yang mengizinkan akses ke Amazon Kinesis Data Streams. Jika Anda tidak menggunakan Kinesis Data Streams sebagai sumber data, Anda dapat menghapus pernyataan tersebut.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:region
:account-id
:key/key-id
" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.region
.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket/prefix
*" } } }, { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:region
:account-id
:stream/stream-name
" }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:log-group-name
:log-stream:log-stream-name
" ] }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetFunctionConfiguration" ], "Resource": [ "arn:aws:lambda:region
:account-id
:function:function-name
:function-version
" ] } ] }
Untuk informasi selengkapnya tentang mengizinkan AWS layanan lain mengakses AWS sumber daya Anda, lihat Membuat Peran untuk Mendelegasikan Izin ke AWS Layanan di IAMPanduan Pengguna.
VPCakses ke klaster yang disediakan Amazon Redshift atau grup kerja Amazon Redshift Tanpa Server
Jika klaster yang disediakan Amazon Redshift atau grup kerja Tanpa Server Amazon Redshift Anda berada di cloud pribadi virtual (VPC), klaster tersebut harus dapat diakses publik dengan alamat IP publik. Selain itu, berikan akses Amazon Data Firehose ke klaster yang disediakan Amazon Redshift atau grup kerja Tanpa Server Amazon Redshift dengan membuka blokir alamat IP Amazon Data Firehose. Amazon Data Firehose saat ini menggunakan satu CIDR blok untuk setiap Wilayah yang tersedia.
Wilayah | CIDRblok |
---|---|
AS Timur (Ohio) |
|
AS Timur (Virginia Utara) | 52.70.63.192/27 |
AS Barat (California Utara) | 13.57.135.192/27 |
AS Barat (Oregon) | 52.89.255.224/27 |
AWS GovCloud (AS-Timur) | 18.253.138.96/27 |
AWS GovCloud (AS-Barat) | 52.61.204.160/27 |
Kanada (Pusat) | 35.183.92.128/27 |
Kanada Barat (Calgary) | 40.176.98.192/27 |
Asia Pasifik (Hong Kong) | 18.162.221.32/27 |
Asia Pasifik (Mumbai) | 13.232.67.32/27 |
Asia Pasifik (Hyderabad) | 18.60.192.128/27 |
Asia Pasifik (Seoul) | 13.209.1.64/27 |
Asia Pasifik (Singapura) | 13.228.64.192/27 |
Asia Pasifik (Sydney) | 13.210.67.224/27 |
Asia Pasifik (Jakarta) | 108.136.221.64/27 |
Asia Pasifik (Tokyo) | 13.113.196.224/27 |
Asia Pasifik (Osaka) | 13.208.177.192/27 |
China (Beijing) | 52.81.151.32/27 |
China (Ningxia) | 161.189.23.64/27 |
Eropa (Zürich) | 16.62.183.32/27 |
Eropa (Frankfurt) | 35.158.127.160/27 |
Eropa (Irlandia) | 52.19.239.192/27 |
Eropa (London) | 18.130.1.96/27 |
Eropa (Paris) | 35.180.1.96/27 |
Eropa (Stockholm) | 13.53.63.224/27 |
Timur Tengah (Bahrain) | 15.185.91.0/27 |
Amerika Selatan (Sao Paulo) | 18.228.1.128/27 |
Eropa (Milan) | 15.161.135.128/27 |
Afrika (Cape Town) | 13.244.121.224/27 |
Timur Tengah (UAE) | 3.28.159.32/27 |
Israel (Tel Aviv) | 51.16.102.0/27 |
Asia Pasifik (Melbourne) | 16.50.161.128/27 |
Asia Pasifik (Malaysia) | 43.216.58.0/27 |
Untuk informasi selengkapnya tentang cara membuka blokir alamat IP, lihat langkah Otorisasi Akses ke Cluster di panduan Panduan Memulai Pergeseran Merah Amazon.
Berikan akses Firehose ke tujuan Layanan publik OpenSearch
Saat Anda menggunakan tujuan OpenSearch Layanan, Amazon Data Firehose mengirimkan data ke kluster OpenSearch Layanan, dan secara bersamaan mencadangkan gagal atau semua dokumen ke bucket S3 Anda. Jika pencatatan kesalahan diaktifkan, Amazon Data Firehose juga mengirimkan kesalahan pengiriman data ke grup CloudWatch log dan aliran Anda. Amazon Data Firehose menggunakan IAM peran untuk mengakses domain OpenSearch Layanan tertentu, bucket S3, AWS KMS kunci, dan grup CloudWatch log serta stream. Anda harus memiliki IAM peran saat membuat aliran Firehose.
Gunakan kebijakan akses berikut untuk mengaktifkan Amazon Data Firehose mengakses bucket, domain OpenSearch Layanan, dan kunci S3 Anda. AWS KMS Jika Anda tidak memiliki bucket S3, tambahkan s3:PutObjectAcl
ke daftar tindakan Amazon S3, yang memberi pemilik bucket akses penuh ke objek yang dikirimkan oleh Amazon Data Firehose. Kebijakan ini juga memiliki pernyataan yang mengizinkan akses ke Amazon Kinesis Data Streams. Jika Anda tidak menggunakan Kinesis Data Streams sebagai sumber data, Anda dapat menghapus pernyataan tersebut.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:region
:account-id
:key/key-id
" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.region
.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket/prefix
*" } } }, { "Effect": "Allow", "Action": [ "es:DescribeDomain", "es:DescribeDomains", "es:DescribeDomainConfig", "es:ESHttpPost", "es:ESHttpPut" ], "Resource": [ "arn:aws:es:region
:account-id
:domain/domain-name
", "arn:aws:es:region
:account-id
:domain/domain-name
/*" ] }, { "Effect": "Allow", "Action": [ "es:ESHttpGet" ], "Resource": [ "arn:aws:es:region
:account-id
:domain/domain-name
/_all/_settings", "arn:aws:es:region
:account-id
:domain/domain-name
/_cluster/stats", "arn:aws:es:region
:account-id
:domain/domain-name
/index-name
*/_mapping/type-name
", "arn:aws:es:region
:account-id
:domain/domain-name
/_nodes", "arn:aws:es:region
:account-id
:domain/domain-name
/_nodes/stats", "arn:aws:es:region
:account-id
:domain/domain-name
/_nodes/*/stats", "arn:aws:es:region
:account-id
:domain/domain-name
/_stats", "arn:aws:es:region
:account-id
:domain/domain-name
/index-name
*/_stats", "arn:aws:es:region
:account-id
:domain/domain-name
/" ] }, { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:region
:account-id
:stream/stream-name
" }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:log-group-name
:log-stream:log-stream-name
" ] }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetFunctionConfiguration" ], "Resource": [ "arn:aws:lambda:region
:account-id
:function:function-name
:function-version
" ] } ] }
Untuk informasi selengkapnya tentang mengizinkan AWS layanan lain mengakses AWS sumber daya Anda, lihat Membuat Peran untuk Mendelegasikan Izin ke AWS Layanan di IAMPanduan Pengguna.
Untuk mempelajari cara memberikan Amazon Data Firehose akses ke kluster OpenSearch Layanan di akun lain, lihat. Pengiriman lintas akun ke tujuan OpenSearch Layanan
Berikan akses Firehose ke tujuan OpenSearch Layanan di VPC
Jika domain OpenSearch Layanan Anda adaVPC, pastikan Anda memberi Amazon Data Firehose izin yang dijelaskan di bagian sebelumnya. Selain itu, Anda perlu memberi Amazon Data Firehose izin berikut untuk mengaktifkannya mengakses domain OpenSearch Layanan Anda. VPC
-
ec2:DescribeVpcs
-
ec2:DescribeVpcAttribute
-
ec2:DescribeSubnets
-
ec2:DescribeSecurityGroups
-
ec2:DescribeNetworkInterfaces
-
ec2:CreateNetworkInterface
-
ec2:CreateNetworkInterfacePermission
-
ec2:DeleteNetworkInterface
penting
Jangan mencabut izin ini setelah Anda membuat aliran Firehose. Jika Anda mencabut izin ini, aliran Firehose Anda akan terdegradasi atau berhenti mengirimkan data ke domain OpenSearch layanan Anda setiap kali layanan mencoba melakukan kueri atau pembaruan. ENIs
penting
Saat Anda menentukan subnet untuk mengirimkan data ke tujuan secara pribadiVPC, pastikan Anda memiliki cukup banyak alamat IP gratis di subnet yang dipilih. Jika tidak ada alamat IP gratis yang tersedia di subnet tertentu, Firehose tidak dapat membuat atau ENIs menambahkan untuk pengiriman data secara VPC pribadi, dan pengiriman akan terdegradasi atau gagal.
Saat membuat atau memperbarui aliran Firehose, Anda menentukan grup keamanan untuk Firehose yang akan digunakan saat mengirim data ke domain Layanan Anda. OpenSearch Anda dapat menggunakan grup keamanan yang sama dengan yang digunakan domain OpenSearch Layanan atau yang berbeda. Jika Anda menentukan grup keamanan yang berbeda, pastikan bahwa itu memungkinkan HTTPS lalu lintas keluar ke grup keamanan domain OpenSearch Layanan. Pastikan juga bahwa grup keamanan domain OpenSearch Layanan mengizinkan HTTPS lalu lintas dari grup keamanan yang Anda tentukan saat mengonfigurasi aliran Firehose. Jika Anda menggunakan grup keamanan yang sama untuk aliran Firehose dan domain OpenSearch Layanan, pastikan aturan masuk grup keamanan mengizinkan lalu lintas. HTTPS Untuk informasi selengkapnya tentang aturan grup keamanan, lihat Aturan grup keamanan di VPC dokumentasi Amazon.
Berikan akses Firehose ke tujuan publik Tanpa Server OpenSearch
Saat Anda menggunakan tujuan OpenSearch Tanpa Server, Amazon Data Firehose mengirimkan data ke koleksi OpenSearch Tanpa Server Anda, dan secara bersamaan mencadangkan gagal atau semua dokumen ke bucket S3 Anda. Jika pencatatan kesalahan diaktifkan, Amazon Data Firehose juga mengirimkan kesalahan pengiriman data ke grup CloudWatch log dan aliran Anda. Amazon Data Firehose menggunakan IAM peran untuk mengakses kumpulan OpenSearch Serverless, bucket S3, AWS KMS kunci, dan CloudWatch grup log serta stream yang ditentukan. Anda harus memiliki IAM peran saat membuat aliran Firehose.
Gunakan kebijakan akses berikut untuk mengaktifkan Amazon Data Firehose mengakses bucket S3, domain OpenSearch Tanpa Server, dan kunci Anda. AWS KMS Jika Anda tidak memiliki bucket S3, tambahkan s3:PutObjectAcl
ke daftar tindakan Amazon S3, yang memberi pemilik bucket akses penuh ke objek yang dikirimkan oleh Amazon Data Firehose. Kebijakan ini juga memiliki pernyataan yang mengizinkan akses ke Amazon Kinesis Data Streams. Jika Anda tidak menggunakan Kinesis Data Streams sebagai sumber data, Anda dapat menghapus pernyataan tersebut.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:region
:account-id
:key/key-id
" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.region
.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket/prefix
*" } } }, { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:region
:account-id
:stream/stream-name
" }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:log-group-name
:log-stream:log-stream-name
" ] }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetFunctionConfiguration" ], "Resource": [ "arn:aws:lambda:region
:account-id
:function:function-name
:function-version
" ] }, { "Effect": "Allow", "Action": "aoss:APIAccessAll", "Resource": "arn:aws:aoss:region
:account-id
:collection/collection-id
" } ] }
Selain kebijakan di atas, Anda juga harus mengonfigurasi Amazon Data Firehose agar izin minimum berikut ditetapkan dalam kebijakan akses data:
[ { "Rules":[ { "ResourceType":"index", "Resource":[ "index/target-collection/target-index" ], "Permission":[ "aoss:WriteDocument", "aoss:UpdateIndex", "aoss:CreateIndex" ] } ], "Principal":[ "arn:aws:sts::
account-id
:assumed-role/firehose-delivery-role-name
/*" ] } ]
Untuk informasi selengkapnya tentang mengizinkan AWS layanan lain mengakses AWS sumber daya Anda, lihat Membuat Peran untuk Mendelegasikan Izin ke AWS Layanan di IAMPanduan Pengguna.
Berikan akses Firehose ke tujuan Tanpa OpenSearch Server di VPC
Jika koleksi OpenSearch Tanpa Server Anda adaVPC, pastikan Anda memberi Amazon Data Firehose izin yang dijelaskan di bagian sebelumnya. Selain itu, Anda perlu memberi Amazon Data Firehose izin berikut untuk mengaktifkannya mengakses koleksi Tanpa OpenSearch Server Anda. VPC
-
ec2:DescribeVpcs
-
ec2:DescribeVpcAttribute
-
ec2:DescribeSubnets
-
ec2:DescribeSecurityGroups
-
ec2:DescribeNetworkInterfaces
-
ec2:CreateNetworkInterface
-
ec2:CreateNetworkInterfacePermission
-
ec2:DeleteNetworkInterface
penting
Jangan mencabut izin ini setelah Anda membuat aliran Firehose. Jika Anda mencabut izin ini, aliran Firehose Anda akan terdegradasi atau berhenti mengirimkan data ke domain OpenSearch layanan Anda setiap kali layanan mencoba melakukan kueri atau pembaruan. ENIs
penting
Saat Anda menentukan subnet untuk mengirimkan data ke tujuan secara pribadiVPC, pastikan Anda memiliki cukup banyak alamat IP gratis di subnet yang dipilih. Jika tidak ada alamat IP gratis yang tersedia di subnet tertentu, Firehose tidak dapat membuat atau ENIs menambahkan untuk pengiriman data secara VPC pribadi, dan pengiriman akan terdegradasi atau gagal.
Saat membuat atau memperbarui aliran Firehose, Anda menentukan grup keamanan untuk Firehose yang akan digunakan saat mengirimkan data ke koleksi Tanpa Server. OpenSearch Anda dapat menggunakan grup keamanan yang sama dengan yang digunakan oleh koleksi OpenSearch Tanpa Server atau yang berbeda. Jika Anda menentukan grup keamanan yang berbeda, pastikan bahwa itu memungkinkan HTTPS lalu lintas keluar ke grup keamanan koleksi OpenSearch Tanpa Server. Pastikan juga bahwa grup keamanan koleksi OpenSearch Tanpa Server mengizinkan HTTPS lalu lintas dari grup keamanan yang Anda tentukan saat mengonfigurasi aliran Firehose. Jika Anda menggunakan grup keamanan yang sama untuk aliran Firehose dan koleksi OpenSearch Tanpa Server, pastikan aturan masuk grup keamanan mengizinkan lalu lintas. HTTPS Untuk informasi selengkapnya tentang aturan grup keamanan, lihat Aturan grup keamanan di VPC dokumentasi Amazon.
Berikan akses Firehose ke tujuan Splunk
Saat Anda menggunakan tujuan Splunk, Amazon Data Firehose mengirimkan data ke titik akhir HTTP Splunk Event Collector () Anda. HEC Ini juga mencadangkan data tersebut ke bucket Amazon S3 yang Anda tentukan, dan Anda dapat menggunakan AWS KMS kunci yang Anda miliki untuk enkripsi sisi server Amazon S3 secara opsional. Jika pencatatan kesalahan diaktifkan, Firehose mengirimkan kesalahan pengiriman data ke aliran CloudWatch log Anda. Anda juga dapat menggunakan AWS Lambda untuk transformasi data.
Jika Anda menggunakan AWS load balancer, pastikan bahwa itu adalah Classic Load Balancer atau Application Load Balancer. Selain itu, aktifkan sesi lengket berbasis durasi dengan kedaluwarsa cookie dinonaktifkan untuk Classic Load Balancer dan kedaluwarsa diatur ke maksimum (7 hari) untuk Application Load Balancer. Untuk informasi tentang cara melakukannya, lihat Kelengketan Sesi Berbasis Durasi untuk Classic Load Balancer atau Application Load Balancer.
Anda harus memiliki IAM peran saat membuat aliran Firehose. Firehose mengasumsikan IAM peran tersebut dan mendapatkan akses ke bucket, key, dan grup CloudWatch log serta stream yang ditentukan.
Gunakan kebijakan akses berikut untuk mengaktifkan Amazon Data Firehose mengakses bucket S3 Anda. Jika Anda tidak memiliki bucket S3, tambahkan s3:PutObjectAcl
ke daftar tindakan Amazon S3, yang memberi pemilik bucket akses penuh ke objek yang dikirimkan oleh Amazon Data Firehose. Kebijakan ini juga memberikan Amazon Data Firehose akses CloudWatch untuk pencatatan kesalahan dan AWS Lambda untuk transformasi data. Kebijakan ini juga memiliki pernyataan yang mengizinkan akses ke Amazon Kinesis Data Streams. Jika Anda tidak menggunakan Kinesis Data Streams sebagai sumber data, Anda dapat menghapus pernyataan tersebut. Amazon Data Firehose tidak digunakan IAM untuk mengakses Splunk. Untuk mengakses Splunk, ia menggunakan token AndaHEC.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:region
:account-id
:key/key-id
" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.region
.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket/prefix
*" } } }, { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:region
:account-id
:stream/stream-name
" }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:log-group-name
:log-stream:*" ] }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetFunctionConfiguration" ], "Resource": [ "arn:aws:lambda:region
:account-id
:function:function-name
:function-version
" ] } ] }
Untuk informasi selengkapnya tentang mengizinkan AWS layanan lain mengakses AWS sumber daya Anda, lihat Membuat Peran untuk Mendelegasikan Izin ke AWS Layanan di IAMPanduan Pengguna.
Mengakses Splunk di VPC
Jika platform Splunk Anda berada di aVPC, itu harus dapat diakses publik dengan alamat IP publik. Juga, berikan Amazon Data Firehose akses ke platform Splunk Anda dengan membuka blokir alamat IP Amazon Data Firehose. Amazon Data Firehose saat ini menggunakan blok berikutCIDR.
Wilayah | CIDRblok |
---|---|
AS Timur (Ohio) |
|
AS Timur (Virginia Utara) | 34.238.188.128/26, 34.238.188.192/26,
34.238.195.0/26 |
AS Barat (California Utara) | 13.57.180.0/26 |
AS Barat (Oregon) | 34.216.24.32/27, 34.216.24.192/27,
34.216.24.224/27 |
AWS GovCloud (AS-Timur) | 18.253.138.192/26 |
AWS GovCloud (AS-Barat) | 52.61.204.192/26 |
Asia Pasifik (Hong Kong) | 18.162.221.64/26 |
Asia Pasifik (Mumbai) | 13.232.67.64/26 |
Asia Pasifik (Seoul) | 13.209.71.0/26 |
Asia Pasifik (Singapura) | 13.229.187.128/26 |
Asia Pasifik (Sydney) | 13.211.12.0/26 |
Asia Pasifik (Tokyo) | 13.230.21.0/27, 13.230.21.32/27 |
(Canada (Central) | 35.183.92.64/26 |
Kanada Barat (Calgary) | 40.176.98.128/26 |
Eropa (Frankfurt) | 18.194.95.192/27, 18.194.95.224/27,
18.195.48.0/27 |
Eropa (Irlandia) | 34.241.197.32/27, 34.241.197.64/27,
34.241.197.96/27 |
Eropa (London) | 18.130.91.0/26 |
Eropa (Paris) | 35.180.112.0/26 |
Eropa (Stockholm) | 13.53.191.0/26 |
Timur Tengah (Bahrain) | 15.185.91.64/26 |
Amerika Selatan (Sao Paulo) | 18.228.1.192/26 |
Eropa (Milan) | 15.161.135.192/26 |
Afrika (Cape Town) | 13.244.165.128/26 |
Asia Pasifik (Osaka) | 13.208.217.0/26 |
China (Beijing) | 52.81.151.64/26 |
China (Ningxia) | 161.189.23.128/26 |
Asia Pasifik (Jakarta) | 108.136.221.128/26 |
Timur Tengah (UAE) | 3.28.159.64/26 |
Israel (Tel Aviv) | 51.16.102.64/26 |
Eropa (Zürich) | 16.62.183.64/26 |
Asia Pasifik (Hyderabad) | 18.60.192.192/26 |
Asia Pasifik (Melbourne) | 16.50.161.192/26 |
Asia Pasifik (Malaysia) | 43.216.44.192/26 |
Menelan log VPC aliran ke Splunk menggunakan Amazon Data Firehose
Untuk mempelajari lebih lanjut tentang cara membuat langganan log VPC alur, terbitkan ke Firehose, dan kirim log VPC aliran ke tujuan yang didukung, lihat log aliran Ingest VPC ke Splunk menggunakan Amazon
Mengakses Snowflake atau titik akhir HTTP
Tidak ada subset rentang alamat AWS IP khusus untuk Amazon Data Firehose ketika tujuannya HTTP adalah titik akhir atau klaster publik Snowflake.
Untuk menambahkan Firehose ke daftar izin untuk kluster Snowflake publik atau ke publik HTTP atau HTTPS titik akhir Anda, tambahkan semua rentang alamat AWS IP saat ini ke aturan masuk Anda.
catatan
Notifikasi tidak selalu bersumber dari alamat IP di AWS Wilayah yang sama dengan topik terkait. Anda harus menyertakan rentang alamat AWS IP untuk semua Wilayah.
Berikan akses Firehose ke tujuan Snowflake
Saat Anda menggunakan Snowflake sebagai tujuan, Firehose mengirimkan data ke akun Snowflake menggunakan akun Snowflake Anda. URL Ini juga mencadangkan data kesalahan ke bucket Amazon Simple Storage Service yang Anda tentukan, dan Anda dapat menggunakan AWS Key Management Service kunci yang Anda miliki untuk enkripsi sisi server Amazon S3 secara opsional. Jika pencatatan kesalahan diaktifkan, Firehose mengirimkan kesalahan pengiriman data ke aliran CloudWatch Log Anda.
Anda harus memiliki IAM peran sebelum membuat aliran Firehose. Firehose mengasumsikan IAM peran tersebut dan mendapatkan akses ke grup dan aliran bucket, kunci, serta CloudWatch Log yang ditentukan. Gunakan kebijakan akses berikut untuk mengaktifkan Firehose mengakses bucket S3 Anda. Jika Anda tidak memiliki bucket S3, tambahkan s3:PutObjectAcl
ke daftar tindakan Amazon Simple Storage Service, yang memberi pemilik bucket akses penuh ke objek yang dikirimkan oleh Firehose. Kebijakan ini juga memberikan akses Firehose CloudWatch untuk pencatatan kesalahan. Kebijakan ini juga memiliki pernyataan yang mengizinkan akses ke Amazon Kinesis Data Streams. Jika Anda tidak menggunakan Kinesis Data Streams sebagai sumber data, Anda dapat menghapus pernyataan tersebut. Firehose tidak digunakan IAM untuk mengakses Snowflake. Untuk mengakses Snowflake, ia menggunakan Url akun Snowflake dan PrivateLink Vpce Id Anda dalam kasus cluster pribadi.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:region:account-id:key/key-id" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.region.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket
/prefix*" } } }, { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:region:account-id:stream/stream-name" }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region:account-id:log-group:log-group-name:log-stream:*" ] } ] }
Untuk informasi selengkapnya tentang mengizinkan AWS layanan lain mengakses AWS sumber daya Anda, lihat Membuat Peran untuk Mendelegasikan Izin ke AWS Layanan di IAMPanduan Pengguna.
Mengakses Snowflake di VPC
Jika klaster Snowflake Anda mengaktifkan tautan pribadi, Firehose menggunakan VPC Endpoint untuk mengirimkan data ke klaster pribadi Anda tanpa melalui internet publik. Untuk ini, buat aturan jaringan Snowflake untuk mengizinkan masuknya dari berikut ini AwsVpceIds
untuk klaster Wilayah AWS Anda. Untuk informasi selengkapnya, lihat Membuat aturan jaringan
VPCId titik akhir yang akan digunakan berdasarkan Wilayah tempat klaster Anda berada | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Wilayah AWS | VPCE IDs |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AS Timur (Ohio) |
vpce-0d96cafcd96a50aeb vpce-0cec34343d48f537b |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AS Timur (Virginia Utara) |
vpce-0b4d7e8478e141ba8 vpce-0b75cd681fb507352 vpce-01c03e63820ec00d8 vpce-0c2cfc51dc2882422 vpce-06ca862f019e4e056 vpce-020cda0cfa63f8d1c vpce-0b80504a1a783cd70 vpce-0289b9ff0b5259a96 vpce-0d7add8628bd69a12 vpce-02bfb5966cc59b2af vpce-09e707674af878bf2 vpce-049b52e96cc1a2165 vpce-0bb6c7b7a8a86cdbb vpce-03b22d599f51e80f3 vpce-01d60dc60fc106fe1 vpce-0186d20a4b24ecbef vpce-0533906401a36e416 vpce-05111fb13d396710e vpce-0694613f4fbd6f514 vpce-09b21cb25fe4cc4f4 vpce-06029c3550e4d2399 vpce-00961862a21b033da vpce-01620b9ae33273587 vpce-078cf4ec226880ac9 vpce-0d711bf076ce56381 vpce-066b7e13cbfca6f6e vpce-0674541252d9ccc26 vpce-03540b88dedb4b000 vpce-0b1828e79ad394b95 vpce-0dc0e6f001fb1a60d vpce-0d8f82e71a244098a vpce-00e374d9e3f1af5ce vpce-0c1e3d6631ddb442f |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AS Barat (Oregon) |
vpce-0f60f72da4cd1e4e7 vpce-0c60d21eb8b1669fd vpce-01c4e3e29afdafbef vpce-0cc6bf2a88da139de vpce-0797e08e169e50662 vpce-033cbe480381b5c0e vpce-00debbdd8f9eb10a5 vpce-08ec2f386c809e889 vpce-0856d14310857b545 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Eropa (Frankfurt) |
vpce-068dbb7d71c9460fb vpce-0a7a7f095942d4ec9 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Eropa (Irlandia) |
vpce-06857e59c005a6276 vpce-04390f4f8778b75f2 vpce-011fd2b1f0aa172fd |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Asia Pasifik (Tokyo) |
vpce-06369e5258144e68a vpce-0f2363cdb8926fbe8 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Asia Pasifik (Singapura) |
vpce-049cd46cce7a12d52 vpce-0e8965a1a4bdb8941 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Asia Pasifik (Seoul) |
vpce-0aa444d9001e1faa1 vpce-04a49dcfd02b884 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Asia Pasifik (Sydney) |
vpce-048a60a182c52be63 vpce-03c19949787fd1859 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Asia Pasifik (Mumbai) |
vpce-0d68cb822f6f0db68 vpce-0517d32692ffcbde2 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Eropa (London) |
vpce-0fd1874a0ba3b9374 vpce-08091b1a85e206029 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amerika Selatan (Sao Paulo) |
vpce-065169b8144e4f12e vpce-0493699f0e5762d63 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kanada (Pusat) |
vpce-07e6ed81689d5271f vpce-0f53239730541394c |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Eropa (Paris) |
vpce-09419680077e6488a vpce-0ea81ba2c08140c14 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Asia Pasifik (Osaka) |
vpce-0a9f003e6a7e38c05 vpce-02886510b897b1c5a |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Eropa (Stockholm) |
vpce-0d96410833219025a vpce-060a32f9a75ba969f |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Asia Pasifik (Jakarta) |
vpce-00add4b9a25e5c649 vpce-004ae2de34338a856 |
Berikan akses Firehose ke tujuan titik akhir HTTP
Anda dapat menggunakan Amazon Data Firehose untuk mengirimkan data ke tujuan titik HTTP akhir mana pun. Amazon Data Firehose juga mencadangkan data tersebut ke bucket Amazon S3 yang Anda tentukan, dan Anda dapat menggunakan AWS KMS kunci yang Anda miliki untuk enkripsi sisi server Amazon S3 secara opsional. Jika pencatatan kesalahan diaktifkan, Amazon Data Firehose mengirimkan kesalahan pengiriman data ke aliran CloudWatch log Anda. Anda juga dapat menggunakan AWS Lambda untuk transformasi data.
Anda harus memiliki IAM peran saat membuat aliran Firehose. Amazon Data Firehose mengasumsikan IAM peran tersebut dan mendapatkan akses ke bucket, kunci, dan grup CloudWatch log serta stream yang ditentukan.
Gunakan kebijakan akses berikut untuk mengaktifkan Amazon Data Firehose mengakses bucket S3 yang Anda tentukan untuk pencadangan data. Jika Anda tidak memiliki bucket S3, tambahkan s3:PutObjectAcl
ke daftar tindakan Amazon S3, yang memberi pemilik bucket akses penuh ke objek yang dikirimkan oleh Amazon Data Firehose. Kebijakan ini juga memberikan Amazon Data Firehose akses CloudWatch untuk pencatatan kesalahan dan AWS Lambda untuk transformasi data. Kebijakan ini juga memiliki pernyataan yang mengizinkan akses ke Amazon Kinesis Data Streams. Jika Anda tidak menggunakan Kinesis Data Streams sebagai sumber data, Anda dapat menghapus pernyataan tersebut.
penting
Amazon Data Firehose tidak digunakan IAM untuk mengakses tujuan HTTP titik akhir yang dimiliki oleh penyedia layanan pihak ketiga yang didukung, termasuk Datadog, Dynatrace, LogicMonitor MongoDB, New Relic, Splunk, atau Sumo Logic. Untuk mengakses tujuan HTTP titik akhir tertentu yang dimiliki oleh penyedia layanan pihak ketiga yang didukung, hubungi penyedia layanan tersebut untuk mendapatkan API kunci atau kunci akses yang diperlukan untuk mengaktifkan pengiriman data ke layanan tersebut dari Amazon Data Firehose.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:region
:account-id
:key/key-id
" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.region
.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket/prefix
*" } } }, { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:region
:account-id
:stream/stream-name
" }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:log-group-name
:log-stream:*" ] }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetFunctionConfiguration" ], "Resource": [ "arn:aws:lambda:region
:account-id
:function:function-name
:function-version
" ] } ] }
Untuk informasi selengkapnya tentang mengizinkan AWS layanan lain mengakses AWS sumber daya Anda, lihat Membuat Peran untuk Mendelegasikan Izin ke AWS Layanan di IAMPanduan Pengguna.
penting
Saat ini Amazon Data Firehose NOT mendukung pengiriman data ke HTTP titik akhir di file. VPC
Pengiriman lintas akun dari Amazon MSK
Saat membuat aliran Firehose dari akun Firehose (misalnya, Akun B) dan sumber Anda adalah MSK klaster di AWS akun lain (Akun A), Anda harus memiliki konfigurasi berikut.
Akun A:
Di MSK konsol Amazon, pilih klaster yang disediakan lalu pilih Properties.
Di bawah Pengaturan jaringan, pilih Edit dan aktifkan Multi VPC konektivitas.
Di bawah Setelan keamanan pilih Edit kebijakan klaster.
Jika klaster belum memiliki kebijakan yang dikonfigurasi, periksa Sertakan prinsipal layanan Firehose dan Aktifkan pengiriman S3 lintas akun Firehose. Secara otomatis AWS Management Console akan menghasilkan kebijakan dengan izin yang sesuai.
-
Jika klaster sudah memiliki kebijakan yang dikonfigurasi, tambahkan izin berikut ke kebijakan yang ada:
{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
arn
:role/mskaasTestDeliveryRole" }, "Action": [ "kafka:GetBootstrapBrokers", "kafka:DescribeCluster", "kafka:DescribeClusterV2", "kafka-cluster:Connect" ], "Resource": "arn:aws:kafka:us-east-1:arn
:cluster/DO-NOT-TOUCH-mskaas-provisioned-privateLink/xxxxxxxxx-2f3a-462a-ba09-xxxxxxxxxx-20" // ARN of the cluster }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::arn
:role/mskaasTestDeliveryRole" }, "Action": [ "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration", "kafka-cluster:ReadData" ], "Resource": "arn:aws:kafka:us-east-1:arn
:topic/DO-NOT-TOUCH-mskaas-provisioned-privateLink/xxxxxxxxx-2f3a-462a-ba09-xxxxxxxxxx-20/*"//topic of the cluster }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::233450236687:role/mskaasTestDeliveryRole" }, "Action": "kafka-cluster:DescribeGroup", "Resource": "arn:aws:kafka:us-east-1:arn
:group/DO-NOT-TOUCH-mskaas-provisioned-privateLink/xxxxxxxxx-2f3a-462a-ba09-xxxxxxxxxx-20/*" //topic of the cluster }, }
Di bawah AWS prinsipal, masukkan ID utama dari Akun B.
Di bawah Topik, tentukan topik Apache Kafka dari mana Anda ingin aliran Firehose Anda menyerap data. Setelah aliran Firehose dibuat, Anda tidak dapat memperbarui topik ini.
Pilih Save changes (Simpan perubahan)
Akun B:
Di Firehose console, pilih Create Firehose stream menggunakan Akun B.
Di bawah Sumber, pilih Amazon Managed Streaming for Apache Kafka.
Di bawah pengaturan Sumber, untuk cluster Amazon Managed Streaming for Apache Kafka, masukkan ARN cluster MSK Amazon di Akun A.
Di bawah Topik, tentukan topik Apache Kafka dari mana Anda ingin aliran Firehose Anda menyerap data. Setelah aliran Firehose dibuat, Anda tidak dapat memperbarui topik ini.
-
Di Nama aliran pengiriman, tentukan nama untuk aliran Firehose Anda.
Di Akun B saat membuat aliran Firehose, Anda harus memiliki IAM peran (dibuat secara default saat menggunakan AWS Management Console) yang memberikan akses 'baca' aliran Firehose ke klaster Amazon MSK lintas akun untuk topik yang dikonfigurasi.
Berikut ini adalah apa yang dikonfigurasi oleh AWS Management Console:
{ "Sid": "", "Effect": "Allow", "Action": [ "kafka:GetBootstrapBrokers", "kafka:DescribeCluster", "kafka:DescribeClusterV2", "kafka-cluster:Connect" ], "Resource": "arn:aws:kafka:us-east-1:
arn
:cluster/DO-NOT-TOUCH-mskaas-provisioned-privateLink/xxxxxxxxx-2f3a-462a-ba09-xxxxxxxxxx-20/*" //topic of the cluster }, { "Sid": "", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration", "kafka-cluster:ReadData" ], "Resource": "arn:aws:kafka:us-east-1:arn
:topic/DO-NOT-TOUCH-mskaas-provisioned-privateLink/xxxxxxxxx-2f3a-462a-ba09-xxxxxxxxxx-20/mskaas_test_topic" //topic of the cluster }, { "Sid": "", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeGroup" ], "Resource": "arn:aws:kafka:us-east-1:arn
:group/DO-NOT-TOUCH-mskaas-provisioned-privateLink/xxxxxxxxx-2f3a-462a-ba09-xxxxxxxxxx-20/*" //topic of the cluster }, }
Selanjutnya, Anda dapat menyelesaikan langkah opsional untuk mengonfigurasi transformasi catatan dan konversi format rekaman. Untuk informasi selengkapnya, lihat (Opsional) Konfigurasikan transformasi rekaman dan konversi format.
Pengiriman lintas akun ke tujuan Amazon S3
Anda dapat menggunakan Amazon Data Firehose AWS CLI atau Amazon APIs untuk membuat aliran Firehose di satu AWS akun dengan tujuan Amazon S3 di akun lain. Prosedur berikut menunjukkan contoh mengonfigurasi aliran Firehose yang dimiliki oleh akun A untuk mengirimkan data ke bucket Amazon S3 yang dimiliki oleh akun B.
-
Buat IAM peran di bawah akun A menggunakan langkah-langkah yang dijelaskan dalam Berikan Akses Firehose ke Tujuan Amazon S3.
catatan
Dalam kasus ini, bucket Amazon S3 yang ditentukan dalam kebijakan akses dimiliki oleh akun B. Pastikan Anda menambahkan
s3:PutObjectAcl
ke daftar tindakan Amazon S3 dalam kebijakan akses, yang memberikan akun B akses penuh ke objek yang dikirimkan oleh Amazon Data Firehose. Izin ini diperlukan untuk pengiriman lintas akun. Amazon Data Firehose menetapkan header "x-amz-acl" pada permintaan ke "”bucket-owner-full-control. -
Untuk mengizinkan akses dari IAM peran yang dibuat sebelumnya, buat kebijakan bucket S3 di bawah akun B. Kode berikut adalah contoh kebijakan bucket. Untuk informasi selengkapnya, lihat Menggunakan Kebijakan Bucket dan Kebijakan Pengguna.
{ "Version": "2012-10-17", "Id": "PolicyID", "Statement": [ { "Sid": "StmtID", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
accountA-id
:role/iam-role-name
" }, "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] } ] } -
Buat aliran Firehose di bawah akun A menggunakan IAM peran yang Anda buat di langkah 1.
Pengiriman lintas akun ke tujuan OpenSearch Layanan
Anda dapat menggunakan Amazon Data Firehose AWS CLI atau Amazon APIs untuk membuat aliran Firehose di satu AWS akun dengan tujuan OpenSearch Layanan di akun lain. Prosedur berikut menunjukkan contoh bagaimana Anda dapat membuat aliran Firehose di bawah akun A dan mengonfigurasinya untuk mengirimkan data ke tujuan OpenSearch Layanan yang dimiliki oleh akun B.
-
Buat IAM peran di bawah akun A menggunakan langkah-langkah yang dijelaskan dalamBerikan akses Firehose ke tujuan Layanan publik OpenSearch .
-
Untuk mengizinkan akses dari IAM peran yang Anda buat pada langkah sebelumnya, buat kebijakan OpenSearch Layanan di bawah akun B. Berikut JSON ini adalah contohnya.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
Account-A-ID
:role/firehose_delivery_role " }, "Action": "es:ESHttpGet", "Resource": [ "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/_all/_settings", "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/_cluster/stats", "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/roletest*/_mapping/roletest", "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/_nodes", "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/_nodes/stats", "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/_nodes/*/stats", "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/_stats", "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/roletest*/_stats", "arn:aws:es:us-east-1:Account-B-ID
:domain/cross-account-cluster/" ] } ] } -
Buat aliran Firehose di bawah akun A menggunakan IAM peran yang Anda buat di langkah 1. Saat Anda membuat aliran Firehose, gunakan Firehose Data Amazon AWS CLI atau Amazon APIs dan tentukan
ClusterEndpoint
bidang, bukan untuk Layanan.DomainARN
OpenSearch
catatan
Untuk membuat aliran Firehose di satu AWS akun dengan tujuan OpenSearch Layanan di akun lain, Anda harus menggunakan AWS CLI atau Amazon Data Firehose. APIs Anda tidak dapat menggunakan AWS Management Console untuk membuat konfigurasi lintas akun semacam ini.
Menggunakan tanda untuk mengontrol akses
Anda dapat menggunakan Condition
elemen opsional (atau Condition
memblokir) dalam IAM kebijakan untuk menyempurnakan akses ke operasi Amazon Data Firehose berdasarkan kunci dan nilai tag. Subbagian berikut menjelaskan cara melakukan ini untuk operasi Amazon Data Firehose yang berbeda. Untuk informasi lebih lanjut tentang penggunaan Condition
elemen dan operator yang dapat Anda gunakan di dalamnya, lihat Elemen IAM JSON Kebijakan: Kondisi.
CreateDeliveryStream
Untuk operasi CreateDeliveryStream
, gunakan kunci syarat aws:RequestTag
. Pada contoh berikut, MyKey
dan MyValue
mewakili kunci dan nilai yang sesuai untuk sebuah tanda. Untuk informasi selengkapnya, silakan lihat Memahami dasar-dasar tag
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "firehose:CreateDeliveryStream", "firehose:TagDeliveryStream" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/MyKey": "MyValue" } } }] }
TagDeliveryStream
Untuk operasi TagDeliveryStream
, gunakan kunci syarat aws:TagKeys
. Pada contoh berikut, MyKey
adalah contoh kunci tanda.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "firehose:TagDeliveryStream", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:TagKeys": "MyKey" } } } ] }
UntagDeliveryStream
Untuk operasi UntagDeliveryStream
, gunakan kunci syarat aws:TagKeys
. Pada contoh berikut, MyKey
adalah contoh kunci tanda.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "firehose:UntagDeliveryStream", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:TagKeys": "MyKey" } } } ] }
ListDeliveryStreams
Anda tidak dapat menggunakan kendali akses berbasis tanda dengan ListDeliveryStreams
.
Operasi lainnya
Untuk semua operasi Firehose selainCreateDeliveryStream
,,TagDeliveryStream
, dan UntagDeliveryStream
ListDeliveryStreams
, gunakan tombol aws:RequestTag
kondisi. Pada contoh berikut, MyKey
dan MyValue
mewakili kunci dan nilai yang sesuai untuk sebuah tanda.
ListDeliveryStreams
, gunakan tombol firehose:ResourceTag
kondisi untuk mengontrol akses berdasarkan tag pada aliran Firehose itu.
Pada contoh berikut, MyKey
dan MyValue
mewakili kunci dan nilai yang sesuai untuk sebuah tanda. Kebijakan ini hanya akan berlaku untuk aliran Firehose Data yang memiliki tag bernama MyKey
dengan nilai. MyValue
Untuk informasi selengkapnya tentang mengontrol akses berdasarkan tag sumber daya, lihat Mengontrol akses ke AWS sumber daya menggunakan tag di Panduan IAM Pengguna.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "firehose:DescribeDeliveryStream", "Resource": "*", "Condition": { "StringEquals": { "firehose:ResourceTag/MyKey": "MyValue" } } } ] }
Javascript dinonaktifkan atau tidak tersedia di browser Anda.
Untuk menggunakan Dokumentasi AWS, Javascript harus diaktifkan. Lihat halaman Bantuan browser Anda untuk petunjuk.