Mengakses bucket Amazon S3 dengan Redshift Spectrum - Amazon Redshift

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

Mengakses bucket Amazon S3 dengan Redshift Spectrum

Amazon Redshift Spectrum tidak mendukung perutean yang VPC disempurnakan dengan cluster yang disediakan. Amazon Redshift yang disempurnakan VPC merutekan rute lalu lintas tertentu melalui Anda. VPC Semua lalu lintas antara cluster Anda dan bucket Amazon S3 Anda dipaksa untuk melewati Amazon Anda. VPC Redshift Spectrum berjalan AWS sumber daya terkelola yang dimiliki oleh Amazon Redshift. Karena sumber daya ini berada di luar AndaVPC, Redshift Spectrum tidak menggunakan perutean yang ditingkatkanVPC.

Lalu lintas antara Redshift Spectrum dan Amazon S3 dirutekan dengan aman melalui AWS jaringan pribadi, di luar AndaVPC. Lalu lintas dalam penerbangan ditandatangani menggunakan protokol Amazon Signature Version 4 (SIGv4) dan dienkripsi menggunakan. HTTPS Lalu lintas ini diotorisasi berdasarkan IAM peran yang dilampirkan ke cluster Amazon Redshift Anda. Untuk mengelola lalu lintas Redshift Spectrum lebih lanjut, Anda dapat mengubah IAM peran klaster dan kebijakan yang dilampirkan ke bucket Amazon S3. Anda mungkin juga perlu mengonfigurasi VPC untuk mengizinkan klaster Anda mengakses AWS Glue atau Athena, sebagaimana dirinci berikut.

Perhatikan bahwa karena VPC perutean yang ditingkatkan memengaruhi cara Amazon Redshift mengakses sumber daya lain, kueri mungkin gagal kecuali Anda mengonfigurasi dengan benar. VPC Untuk informasi selengkapnyaMengontrol lalu lintas jaringan dengan perutean Redshift yang ditingkatkan VPC, lihat, yang membahas secara lebih rinci membuat VPC titik akhir, NAT gateway, dan sumber daya jaringan lainnya untuk mengarahkan lalu lintas ke bucket Amazon S3 Anda.

catatan

Amazon Redshift Serverless mendukung VPC perutean yang disempurnakan untuk kueri ke tabel eksternal di Amazon S3. Untuk informasi selengkapnya tentang konfigurasi, lihat Memuat data dari Amazon S3 di Panduan Memulai Tanpa Server Amazon Redshift.

Konfigurasi kebijakan izin saat menggunakan Amazon Redshift Spectrum

Pertimbangkan hal berikut saat menggunakan Redshift Spectrum:

Kebijakan dan peran akses bucket Amazon S3 IAM

Anda dapat mengontrol akses ke data di bucket Amazon S3 dengan menggunakan kebijakan bucket yang dilampirkan ke bucket dan dengan menggunakan IAM peran yang dilampirkan ke klaster yang disediakan.

Redshift Spectrum pada kluster yang disediakan tidak dapat mengakses data yang disimpan di bucket Amazon S3 yang menggunakan kebijakan bucket yang membatasi akses hanya ke titik akhir yang ditentukan. VPC Sebagai gantinya, gunakan kebijakan bucket yang membatasi akses hanya ke prinsipal tertentu, seperti kebijakan tertentu AWS akun atau pengguna tertentu.

Untuk IAM peran yang diberikan akses ke bucket, gunakan hubungan kepercayaan yang memungkinkan peran hanya diasumsikan oleh kepala layanan Amazon Redshift. Saat dilampirkan ke cluster Anda, peran hanya dapat digunakan dalam konteks Amazon Redshift dan tidak dapat dibagikan di luar cluster. Untuk informasi selengkapnya, lihat Membatasi akses ke peran IAM. Kebijakan kontrol layanan (SCP) juga dapat digunakan untuk membatasi peran lebih lanjut, lihat Mencegah IAM pengguna dan peran membuat perubahan yang ditentukan, dengan pengecualian untuk peran admin tertentu di AWS Organizations Panduan Pengguna.

catatan

Untuk menggunakan Redshift Spectrum, tidak ada IAM kebijakan yang memblokir penggunaan Amazon S3 URLs presigned yang dapat diterapkan. Presigned URLs yang dihasilkan oleh Amazon Redshift Spectrum berlaku selama 1 jam sehingga Amazon Redshift memiliki cukup waktu untuk memuat semua file dari bucket Amazon S3. Sebuah presigned unik URL dihasilkan untuk setiap file yang dipindai oleh Redshift Spectrum. Untuk kebijakan bucket yang menyertakan s3:signatureAge tindakan, pastikan untuk menetapkan nilainya setidaknya 3.600.000 milidetik.

Contoh kebijakan bucket berikut mengizinkan akses ke bucket yang ditentukan hanya dari lalu lintas yang berasal dari Redshift Spectrum yang dimiliki oleh AWS akun123456789012.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "BucketPolicyForSpectrum", "Effect": "Allow", "Principal": { "AWS": ["arn:aws:iam::123456789012:role/redshift"] }, "Action": ["s3:GetObject", "s3:List*"], "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket/*"], "Condition": { "StringEquals": { "aws:UserAgent": "AWS Redshift/Spectrum" } } }] }

Izin untuk mengasumsikan peran IAM

Peran yang melekat pada klaster Anda harus memiliki hubungan kepercayaan yang memungkinkannya diasumsikan hanya oleh layanan Amazon Redshift, seperti yang ditunjukkan berikut.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Anda dapat menambahkan kebijakan ke peran klaster yang mencegah COPY dan UNLOAD mengakses bucket tertentu. Kebijakan berikut mengizinkan lalu lintas ke bucket yang ditentukan hanya dari Redshift Spectrum.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": ["s3:Get*", "s3:List*"], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Condition": {"StringEquals": {"aws:UserAgent": "AWS Redshift/Spectrum"}} }] }

Untuk informasi selengkapnya, lihat IAMKebijakan untuk Spektrum Pergeseran Merah di Panduan Pengembang Database Amazon Redshift.

Pencatatan dan audit akses Amazon S3

Salah satu manfaat menggunakan VPC perutean Amazon Redshift yang ditingkatkan adalah bahwa semua COPY dan UNLOAD lalu lintas dicatat di log aliran. VPC Lalu lintas yang berasal dari Redshift Spectrum ke Amazon S3 tidak melewati VPC Anda, jadi tidak masuk ke log aliran. VPC Saat Redshift Spectrum mengakses data di Amazon S3, ia melakukan operasi ini dalam konteks AWS akun dan hak istimewa peran masing-masing. Anda dapat mencatat dan mengaudit akses Amazon S3 menggunakan akses server masuk AWS CloudTrail dan Amazon S3.

Pastikan rentang IP S3 ditambahkan ke daftar izin Anda. Untuk mempelajari lebih lanjut tentang rentang IP S3 yang diperlukan, lihat Isolasi jaringan.

AWS CloudTrail Log

Untuk melacak semua akses ke objek di Amazon S3, termasuk akses Redshift Spectrum, aktifkan pencatatan untuk objek CloudTrail Amazon S3.

Anda dapat menggunakan CloudTrail untuk melihat, mencari, mengunduh, mengarsipkan, menganalisis, dan menanggapi aktivitas akun di seluruh AWS infrastruktur. Untuk informasi selengkapnya, lihat Memulai dengan CloudTrail.

Secara default, hanya CloudTrail melacak tindakan tingkat ember. Untuk melacak tindakan tingkat objek (sepertiGetObject), aktifkan data dan peristiwa manajemen untuk setiap bucket yang dicatat.

Pencatatan Log Akses Server Amazon S3

Pencatatan akses server menyediakan catatan terperinci untuk permintaan yang dilakukan ke bucket. Informasi log akses dapat berguna dalam audit keamanan dan akses. Untuk informasi selengkapnya, lihat Cara Mengaktifkan Pencatatan Akses Server di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Untuk informasi lebih lanjut, lihat AWS Posting blog keamanan Cara Menggunakan Kebijakan Bucket dan Menerapkan Pertahanan Secara Mendalam untuk Membantu Mengamankan Data Amazon S3 Anda.

Akses ke AWS Glue atau Amazon Athena

Redshift Spectrum mengakses katalog data Anda di AWS Glue atau Athena. Pilihan lain adalah menggunakan metastore Hive khusus untuk katalog data Anda.

Untuk mengaktifkan akses ke AWS Glue atau Athena, konfigurasikan Anda VPC dengan gateway internet atau NAT gateway. Konfigurasikan grup VPC keamanan Anda untuk mengizinkan lalu lintas keluar ke titik akhir publik AWS Glue dan Athena. Atau, Anda dapat mengonfigurasi VPC titik akhir antarmuka untuk AWS Glue untuk mengakses Anda AWS Glue Data Catalog. Saat Anda menggunakan titik akhir VPC antarmuka, komunikasi antara Anda VPC dan AWS Glue dilakukan di dalam AWS jaringan. Untuk informasi selengkapnya, lihat Membuat Titik Akhir Antarmuka.

Anda dapat mengonfigurasi jalur berikut di: VPC

  • Internet gateway —Untuk terhubung ke AWS layanan di luar AndaVPC, Anda dapat melampirkan gateway internet ke VPC subnet Anda, seperti yang dijelaskan dalam Panduan VPC Pengguna Amazon. Untuk menggunakan gateway internet, cluster yang disediakan harus memiliki alamat IP publik untuk memungkinkan layanan lain berkomunikasi dengannya.

  • NATgateway —Untuk terhubung ke bucket Amazon S3 di bucket lain AWS Wilayah atau layanan lain di dalam AWS jaringan, konfigurasikan gateway terjemahan alamat jaringan (NAT), seperti yang dijelaskan dalam Panduan VPC Pengguna Amazon. Gunakan konfigurasi ini juga untuk mengakses instance host di luar AWS jaringan.

Untuk informasi selengkapnya, lihat Mengontrol lalu lintas jaringan dengan perutean Redshift yang ditingkatkan VPC.