Menggunakan Amazon Data Firehose dengan AWS PrivateLink - Amazon Data Firehose

Amazon Data Firehose sebelumnya dikenal sebagai Amazon Kinesis Data Firehose

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

Menggunakan Amazon Data Firehose dengan AWS PrivateLink

Antarmuka VPC endpoint ()AWS PrivateLink untuk Amazon Data Firehose

Anda dapat menggunakan titik akhir VPC antarmuka untuk menjaga lalu lintas antara Amazon VPC dan Amazon Data Firehose agar tidak meninggalkan jaringan Amazon. Titik akhir VPC antarmuka tidak memerlukan gateway internet, perangkat NAT, koneksi VPN, atau koneksi. AWS Direct Connect Endpoint VPC antarmuka didukung oleh AWS PrivateLink, sebuah AWS teknologi yang memungkinkan komunikasi pribadi antar AWS layanan menggunakan antarmuka network elastis dengan IP pribadi di Amazon VPC Anda. Untuk informasi selengkapnya, lihat Amazon Virtual Private Cloud.

Menggunakan antarmuka VPC endpoint ()AWS PrivateLink untuk Amazon Data Firehose

Untuk memulai, buat titik akhir VPC antarmuka agar lalu lintas Amazon Data Firehose Anda dari sumber daya Amazon VPC Anda mulai mengalir melalui titik akhir VPC antarmuka. Saat membuat endpoint, Anda dapat melampirkan kebijakan endpoint yang mengontrol akses ke Amazon Data Firehose. Untuk selengkapnya tentang menggunakan kebijakan untuk mengontrol akses dari titik akhir VPC ke Amazon Data Firehose, lihat Mengontrol Akses ke Layanan dengan Titik Akhir VPC.

Contoh berikut menunjukkan bagaimana Anda dapat mengatur AWS Lambda fungsi di VPC dan membuat titik akhir VPC untuk memungkinkan fungsi berkomunikasi secara aman dengan layanan Amazon Data Firehose. Dalam contoh ini, Anda menggunakan kebijakan yang memungkinkan fungsi Lambda mencantumkan aliran Firehose di Wilayah saat ini, tetapi tidak menjelaskan aliran Firehose apa pun.

Buat VPC endpoint
  1. Masuk ke AWS Management Console dan buka konsol VPC Amazon di https://console.aws.amazon.com/vpc/.

  2. Pada Dasbor VPC pilih Titik Akhir.

  3. Pilih Buat Titik Akhir.

  4. Pada daftar nama layanan, pilih com.amazonaws.your_region.kinesis-firehose.

  5. Pilih VPC dan satu atau beberapa subnet yang akan jadi tempat menciptakan titik akhir.

  6. Pilih satu atau beberapa grup keamanan untuk dikaitkan dengan titik akhir.

  7. Untuk Kebijakan, pilih Kustom dan tempelkan kebijakan berikut ini:

    { "Statement": [ { "Sid": "Allow-only-specific-PrivateAPIs", "Principal": "*", "Action": [ "firehose:ListDeliveryStreams" ], "Effect": "Allow", "Resource": [ "*" ] }, { "Sid": "Allow-only-specific-PrivateAPIs", "Principal": "*", "Action": [ "firehose:DescribeDeliveryStream" ], "Effect": "Deny", "Resource": [ "*" ] } ] }
  8. Pilih Buat Titik Akhir.

Buat IAM role untuk digunakan dengan fungsi Lambda
  1. Buka konsol IAM di https://console.aws.amazon.com/iam/.

  2. Di panel kiri, pilih Peran lalu pilih Buat peran.

  3. Di bawah Pilih jenis entitas tepercaya, pertahankan pilihan default Layanan AWS .

  4. Di bawah Pilih layanan yang akan menggunakan di peran ini, pilih Lambda.

  5. Pilih Berikutnya: Izin.

  6. Dari daftar kebijakan, cari dan tambahkan dua kebijakan bernama AWS LambdaVPCAccessExecutionRole dan AmazonDataFirehoseReadOnlyAccess.

    penting

    Ini adalah contoh. Anda mungkin memerlukan kebijakan yang lebih ketat untuk lingkungan produksi Anda.

  7. Pilih Berikutnya: Tanda. Anda tidak perlu menambahkan tanda untuk tujuan latihan ini. Pilih Berikutnya: Tinjau.

  8. Masukkan nama peran, lalu pilih Buat peran.

Buat fungsi Lambda di dalam VPC
  1. Buka AWS Lambda konsol di https://console.aws.amazon.com/lambda/.

  2. Pilih Buat fungsi.

  3. Pilih Penulis dari scratch.

  4. Masukkan nama untuk fungsi tersebut, lalu atur Runtime ke Python 3.9 atau lebih tinggi.

  5. Di bagian Izin, perluas Pilih atau buat peran eksekusi.

  6. Pada daftar Peran eksekusi, pilih Gunakan peran yang ada.

  7. Pada daftar Peran yang ada, pilih peran yang Anda buat sebelumnya.

  8. Pilih Buat fungsi.

  9. Di bawah Kode fungsi, tempelkan kode berikut.

    import json import boto3 import os from botocore.exceptions import ClientError def lambda_handler(event, context): REGION = os.environ['AWS_REGION'] client = boto3.client( 'firehose', REGION ) print("Calling list_delivery_streams with ListDeliveryStreams allowed policy.") delivery_stream_request = client.list_delivery_streams() print("Successfully returned list_delivery_streams request %s." % ( delivery_stream_request )) describe_access_denied = False try: print("Calling describe_delivery_stream with DescribeDeliveryStream denied policy.") delivery_stream_info = client.describe_delivery_stream(DeliveryStreamName='test-describe-denied') except ClientError as e: error_code = e.response['Error']['Code'] print ("Caught %s." % (error_code)) if error_code == 'AccessDeniedException': describe_access_denied = True if not describe_access_denied: raise else: print("Access denied test succeeded.")
  10. Di bawah Pengaturan dasar, atur batas waktu menjadi 1 menit.

  11. Di bawah Jaringan, pilih VPC tempat Anda membuat titik akhir di atas, lalu pilih subnet dan grup keamanan yang Anda kaitkan dengan titik akhir saat Anda membuatnya.

  12. Di dekat bagian atas halaman, pilih Simpan.

  13. Pilih Uji.

  14. Masukkan nama peristiwa, lalu pilih Buat.

  15. Pilih Uji sekali lagi. Hal ini akan menyebabkan fungsi berjalan. Setelah hasil eksekusi muncul, perluas Detail dan bandingkan output log dengan kode fungsi. Hasil yang berhasil menunjukkan daftar aliran Firehose di Wilayah, serta output berikut:

    Calling describe_delivery_stream.

    AccessDeniedException

    Access denied test succeeded.

Ketersediaan

VPC endpoint antarmuka saat ini didukung di Wilayah berikut:

  • US East (Ohio)

  • AS Timur (Virginia Utara)

  • AS Barat (California Utara)

  • AS Barat (Oregon)

  • Asia Pasifik (Mumbai)

  • Asia Pasifik (Seoul)

  • Asia Pasifik (Singapura)

  • Asia Pasifik (Sydney)

  • Asia Pacific (Tokyo)

  • Asia Pacific (Hong Kong)

  • Kanada (Pusat)

  • Kanada Barat (Calgary)

  • China (Beijing)

  • Tiongkok (Ningxia)

  • Eropa (Frankfurt)

  • Eropa (Irlandia)

  • Eropa (London)

  • Eropa (Paris)

  • Amerika Selatan (São Paulo)

  • AWS GovCloud (AS-Timur)

  • AWS GovCloud (AS-Barat)

  • Eropa (Spanyol)

  • Timur Tengah (UEA)

  • Asia Pasifik (Jakarta)

  • Asia Pasifik (Osaka)

  • Israel (Tel Aviv)