Amazon Managed Service untuk Apache Flink (Amazon MSF) sebelumnya dikenal sebagai Amazon Kinesis Data Analytics untuk Apache Flink.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana Amazon Managed Service untuk Apache Flink bekerja dengan IAM
Di Amazon MSF, Anda menggunakan IAM dalam konteks berbeda berikut:
-
Izin aplikasi: Kontrol akses oleh aplikasi ke sumber daya eksternal, seperti Amazon S3, Amazon Kinesis Data Streams, atau Amazon DynamoDB, yang menggunakan otentikasi IAM.
-
Manajemen aplikasi dan izin kontrol siklus hidup: Kontrol penggunaan tindakan Amazon MSF API, seperti,, dan CreateApplicationStartApplicationUpdateApplication, yang mengontrol siklus hidup aplikasi. Untuk daftar lengkap semua tindakan Amazon MSF API yang dapat Anda tentukan dalam
Action
elemen pernyataan kebijakan IAM, lihat Tindakan yang ditentukan oleh Amazon Kinesis Analytics V2 di Referensi Otorisasi Layanan.
Topik
Izin aplikasi
Anda mengontrol izin IAM dari aplikasi MSF Amazon dengan peran IAM yang ditetapkan ke aplikasi, sebagai bagian dari konfigurasi aplikasi. Peran IAM ini menentukan izin aplikasi untuk mengakses layanan lain, seperti Amazon S3, Kinesis Data Streams, atau DynamoDB, yang menggunakan IAM untuk otorisasi.
Awas
Mengubah izin untuk peran layanan dapat merusak fungsionalitas Amazon MSF. Pastikan Anda tidak menghapus izin aplikasi untuk mengunduh kode aplikasi dari bucket Amazon S3, dan mengirim log ke Amazon. CloudWatch
Menetapkan izin ke aplikasi menggunakan kebijakan berbasis sumber daya tidak didukung. Anda tidak dapat menentukan aplikasi MSF Amazon sebagai prinsipal dalam kebijakan yang dilampirkan ke sumber daya yang akan diakses.
Izin untuk mengakses kode aplikasi dan log aplikasi
Amazon MSF juga menggunakan peran IAM aplikasi untuk mengakses kode aplikasi yang diunggah di bucket Amazon S3, dan untuk menulis log aplikasi ke Amazon Logs. CloudWatch
Saat Anda membuat atau memperbarui aplikasi menggunakan AWS Management Console, pilih Buat/perbarui peran IAM dengan kebijakan yang diperlukan <role-name>dalam konfigurasi Aplikasi, Amazon MSF secara otomatis membuat dan memodifikasi peran IAM yang menetapkan izin yang diperlukan ke Amazon S3 dan Log. CloudWatch
Jika Anda membuat peran IAM secara manual atau jika Anda membuat dan mengelola aplikasi menggunakan alat otomatisasi, Anda harus menambahkan izin berikut ke peran IAM aplikasi.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReadCode", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::
bucket-name
/path-to-application-code
" ] }, { "Sid": "ListCloudwatchLogGroups", "Effect": "Allow", "Action": [ "logs:DescribeLogGroups" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:*" ] }, { "Sid": "ListCloudwatchLogStreams", "Effect": "Allow", "Action": [ "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:/aws/kinesis-analytics/application-name
:log-stream:*" ] }, { "Sid": "PutCloudwatchLogs", "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region
:account-id
:log-group:/aws/kinesis-analytics/application-name
:log-stream:kinesis-analytics-log-stream" ] } ] }
Pencegahan "confused deputy" lintas layanan
Ketika aplikasi Amazon MSF memanggil yang berbeda Layanan AWS, Anda dapat memberikan izin akses yang lebih terperinci. Misalnya, jika peran IAM digunakan kembali di beberapa aplikasi, aplikasi mungkin mendapatkan akses ke sumber daya yang seharusnya tidak dapat diakses. Ini dikenal sebagai masalah wakil yang bingung. Untuk informasi tentang cara sumber daya yang diakses dapat membatasi akses ke aplikasi MSF Amazon tertentu, lihat. Pencegahan "confused deputy" lintas layanan
Manajemen aplikasi dan izin kontrol siklus hidup
Tindakan untuk mengelola aplikasi dan siklus hidupnya, seperti,, dan CreateApplicationStartApplicationUpdateApplication, dikendalikan melalui kebijakan berbasis identitas yang terkait dengan sumber daya yang melakukan tindakan, seperti pengguna IAM, grup IAM, atau sumber daya seperti memanggil Amazon MSF API. AWS Lambda
catatan
API dan SDK yang mengendalikan siklus hidup aplikasi Amazon MSF disebut Amazon Kinesis Analytics V2, untuk alasan kompatibilitas mundur.
Menetapkan izin untuk tindakan siklus hidup aplikasi menggunakan kebijakan berbasis sumber daya yang dilampirkan ke aplikasi Amazon MSF tidak didukung. Peran IAM aplikasi tidak digunakan untuk mengontrol akses ke tindakan siklus hidup aplikasi. Anda tidak boleh menambahkan izin siklus hidup aplikasi ke peran aplikasi.
Tabel berikut mencantumkan fitur IAM yang dapat Anda gunakan dengan tindakan siklus hidup aplikasi Amazon MSF.
Fitur IAM | Layanan Terkelola untuk dukungan Apache Flink |
---|---|
Ya |
|
Tidak |
|
Ya |
|
Ya |
|
Ya |
|
Tidak |
|
Ya |
|
Ya |
|
Ya |
|
Tidak |
|
Tidak |
-
Untuk tampilan tingkat tinggi tentang bagaimana Layanan Terkelola untuk Apache Flink dan lainnya Layanan AWS bekerja dengan sebagian besar fitur IAM, lihat Layanan AWS yang bekerja dengan IAM di Panduan Pengguna IAM.
-
Untuk informasi tentang sumber daya, tindakan, dan kunci konteks kondisi khusus layanan yang dapat Anda gunakan dalam kebijakan izin IAM, lihat Kunci tindakan, sumber daya, dan kondisi untuk Amazon Kinesis Analytics V2 di Referensi Otorisasi Layanan.
Topik
Tindakan kebijakan siklus hidup aplikasi
Mendukung tindakan kebijakan: Ya
Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Artinya, prinsipal manakah yang dapat melakukan tindakan pada sumber daya apa, dan dengan kondisi apa.
Elemen Action
dari kebijakan JSON menjelaskan tindakan yang dapat Anda gunakan untuk mengizinkan atau menolak akses dalam sebuah kebijakan. Tindakan kebijakan biasanya memiliki nama yang sama dengan operasi AWS API terkait. Ada beberapa pengecualian, misalnya tindakan hanya izin yang tidak memiliki operasi API yang cocok. Ada juga beberapa operasi yang memerlukan beberapa tindakan dalam suatu kebijakan. Tindakan tambahan ini disebut tindakan dependen.
Sertakan tindakan dalam kebijakan untuk memberikan izin untuk melakukan operasi terkait.
Tindakan kebijakan di Amazon MSF menggunakan kinesisanalytics
awalan sebelum tindakan. Amazon MSF APIs dan SDKs gunakan Amazon Kinesis Analytics V2
awalan.
Untuk menetapkan secara spesifik beberapa tindakan dalam satu pernyataan, pisahkan tindakan tersebut dengan koma. Contoh berikut menunjukkan sintaks untuk menentukan tindakan kebijakan Amazon MSF.
"Action" : [ "kinesisanalytics:
action1
", "kinesisanalytics:action2
" ]
Anda juga dapat menentukan beberapa tindakan menggunakan wildcard (*). Misalnya, untuk menentukan semua tindakan yang dimulai dengan kata Describe
, sertakan tindakan berikut.
"Action": "kinesisanalytics:Describe*"
Untuk melihat daftar lengkap semua tindakan Amazon MSF API yang dapat Anda tentukan dalam Action
elemen pernyataan kebijakan IAM, lihat Tindakan yang ditentukan oleh Amazon Kinesis Analytics V2.
Untuk melihat contoh kebijakan berbasis identitas MSF Amazon, lihat. Contoh kebijakan berbasis identitas
Sumber daya kebijakan siklus hidup aplikasi
Mendukung sumber daya kebijakan: Ya
Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Artinya, prinsipal manakah yang dapat melakukan tindakan pada sumber daya apa, dan dengan kondisi apa.
Elemen kebijakan JSON Resource
menentukan objek yang menjadi target penerapan tindakan. Pernyataan harus menyertakan elemen Resource
atau NotResource
. Praktik terbaiknya, tentukan sumber daya menggunakan Amazon Resource Name (ARN). Anda dapat melakukan ini untuk tindakan yang mendukung jenis sumber daya tertentu, yang dikenal sebagai izin tingkat sumber daya.
Untuk tindakan yang tidak mendukung izin di tingkat sumber daya, misalnya operasi pencantuman, gunakan wildcard (*) untuk menunjukkan bahwa pernyataan tersebut berlaku untuk semua sumber daya.
"Resource": "*"
Izin untuk tindakan siklus hidup aplikasi Amazon MSF ditentukan untuk setiap aplikasi. Elemen Resource
JSON dalam kebijakan IAM mendefinisikan aplikasi Amazon MSF yang izin berlaku.
Anda dapat menetapkan izin untuk satu aplikasi dengan menentukan ARN aplikasi, atau sekelompok aplikasi dengan menggunakan wildcard. Contoh berikut menunjukkan sintaks Resource
elemen.
"Resouce" : "arn:
partition
:kinesisanalytics:Region
:account
:application/application-name
Anda juga dapat menetapkan izin untuk mengontrol subset aplikasi menggunakan wildcard. Misalnya, Anda dapat menetapkan izin untuk mengontrol semua aplikasi yang namanya dimulai dengan awalan tertentu.
"Resouce" : "arn:
partition
:kinesisanalytics:Region
:account
:application/application-name-prefix*
Kunci kondisi kebijakan siklus hidup aplikasi
Mendukung kunci kondisi kebijakan khusus layanan: Yes
Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Artinya, prinsipal manakah yang dapat melakukan tindakan pada sumber daya apa, dan dengan kondisi apa.
Elemen Condition
(atau blok Condition
) akan memungkinkan Anda menentukan kondisi yang menjadi dasar suatu pernyataan berlaku. Elemen Condition
bersifat opsional. Anda dapat membuat ekspresi bersyarat yang menggunakan operator kondisi, misalnya sama dengan atau kurang dari, untuk mencocokkan kondisi dalam kebijakan dengan nilai-nilai yang diminta.
Jika Anda menentukan beberapa elemen Condition
dalam sebuah pernyataan, atau beberapa kunci dalam elemen Condition
tunggal, maka AWS akan mengevaluasinya menggunakan operasi AND
logis. Jika Anda menentukan beberapa nilai untuk satu kunci kondisi, AWS mengevaluasi kondisi menggunakan OR
operasi logis. Semua kondisi harus dipenuhi sebelum izin pernyataan diberikan.
Anda juga dapat menggunakan variabel placeholder saat menentukan kondisi. Sebagai contoh, Anda dapat memberikan izin kepada pengguna IAM untuk mengakses sumber daya hanya jika izin tersebut mempunyai tanda yang sesuai dengan nama pengguna IAM mereka. Untuk informasi selengkapnya, lihat Elemen kebijakan IAM: variabel dan tanda dalam Panduan Pengguna IAM.
AWS mendukung kunci kondisi global dan kunci kondisi khusus layanan. Untuk melihat semua kunci kondisi AWS global, lihat kunci konteks kondisi AWS global di Panduan Pengguna IAM.
Anda dapat menggunakan tombol kondisi untuk mengontrol izin ke tindakan siklus hidup aplikasi Amazon MSF. Untuk melihat daftar kunci kondisi Layanan Terkelola untuk Apache Flink, lihat Kunci Kondisi untuk Amazon Managed Service for Apache Flink di Referensi Otorisasi Layanan. Untuk mempelajari tindakan dan sumber daya yang dapat Anda gunakan kunci kondisi, lihat Tindakan yang Ditentukan oleh Amazon Managed Service untuk Apache Flink.
Kontrol akses berbasis atribut (ABAC) dengan Managed Service untuk Apache Flink
Mendukung ABAC (tanda dalam kebijakan): Ya
Dengan menggunakan kunci kondisi, Anda dapat menerapkan kontrol akses berbasis atribut (ABAC), yang merupakan strategi otorisasi yang mendefinisikan izin berdasarkan atribut. Dalam AWS, atribut ini disebut tag. Anda dapat melampirkan tag ke entitas IAM (pengguna atau peran) dan ke banyak AWS sumber daya. Penandaan ke entitas dan sumber daya adalah langkah pertama dari ABAC. Kemudian, Anda merancang kebijakan ABAC untuk mengizinkan operasi ketika tag prinsipal cocok dengan tag pada sumber daya yang mereka coba akses.
ABAC sangat berguna di lingkungan yang berkembang dengan cepat dan berguna di situasi saat manajemen kebijakan menjadi rumit.
Untuk mengendalikan akses berdasarkan tanda, berikan informasi tentang tanda di elemen kondisi dari kebijakan menggunakan kunci kondisi aws:ResourceTag/key-name
, aws:RequestTag/key-name
, atau aws:TagKeys
. Jika sebuah layanan mendukung ketiga kunci kondisi untuk setiap jenis sumber daya, nilainya adalah Ya untuk layanan tersebut. Jika suatu layanan mendukung ketiga kunci kondisi untuk hanya beberapa jenis sumber daya, nilainya adalah Parsial.
-
Untuk informasi selengkapnya tentang ABAC, lihat Mendefinisikan izin berdasarkan atribut dengan otorisasi ABAC.
-
Untuk melihat tutorial dengan langkah-langkah untuk mengatur ABAC, lihat tutorial IAM: Tentukan izin untuk mengakses AWS sumber daya berdasarkan tag.
Menggunakan kredensial sementara
Mendukung kredensial sementara: Ya
Tindakan siklus hidup aplikasi Amazon MSF mendukung kredensil sementara.
Anda menggunakan kredensyal sementara jika Anda masuk AWS Management Console menggunakan metode apa pun kecuali nama pengguna dan kata sandi. Misalnya, ketika Anda mengakses AWS menggunakan tautan masuk tunggal (SSO) perusahaan Anda, proses tersebut secara otomatis membuat kredensil sementara. Anda juga akan secara otomatis membuat kredensial sementara ketika Anda masuk ke konsol sebagai seorang pengguna lalu beralih peran. Untuk informasi selengkapnya tentang beralih peran, lihat Beralih dari pengguna ke peran IAM (konsol).
Anda dapat membuat kredensil sementara secara manual menggunakan API AWS CLI atau AWS . Anda kemudian dapat menggunakan kredensil sementara tersebut untuk mengakses. AWS Kami menyarankan agar Anda secara dinamis menghasilkan kredensi sementara alih-alih menggunakan kunci akses jangka panjang. Untuk informasi selengkapnya, lihat Kredensial keamanan sementara di IAM.
Izin utama lintas layanan
Mendukung sesi akses maju (FAS): Ya
Tindakan siklus hidup aplikasi Amazon MSF mendukung izin utama lintas layanan.
Saat Anda menggunakan pengguna atau peran IAM untuk melakukan tindakan AWS, Anda dianggap sebagai prinsipal. Ketika Anda menggunakan beberapa layanan, Anda mungkin melakukan sebuah tindakan yang kemudian menginisiasi tindakan lain di layanan yang berbeda. Sesi akses teruskan (FAS) menggunakan izin dari pemanggilan utama Layanan AWS, dikombinasikan dengan permintaan Layanan AWS untuk membuat permintaan ke layanan hilir. Permintaan FAS hanya dibuat ketika layanan menerima permintaan yang memerlukan interaksi dengan orang lain Layanan AWS atau sumber daya untuk menyelesaikannya. Dalam hal ini, Anda harus memiliki izin untuk melakukan kedua tindakan tersebut. Untuk detail kebijakan ketika mengajukan permintaan FAS, lihat Sesi akses maju.
Kebijakan berbasis identitas untuk Layanan Terkelola untuk Apache Flink
Mendukung kebijakan berbasis identitas: Ya
Kebijakan berbasis identitas adalah dokumen kebijakan izin JSON yang dapat Anda lampirkan ke sebuah identitas, seperti pengguna IAM, grup pengguna IAM, atau peran IAM. Kebijakan ini mengontrol jenis tindakan yang dapat dilakukan oleh pengguna dan peran, di sumber daya mana, dan berdasarkan kondisi seperti apa. Untuk mempelajari cara membuat kebijakan berbasis identitas, lihat Tentukan izin IAM kustom dengan kebijakan terkelola pelanggan dalam Panduan Pengguna IAM.
Dengan kebijakan berbasis identitas IAM, Anda dapat menentukan secara spesifik apakah tindakan dan sumber daya diizinkan atau ditolak, serta kondisi yang menjadi dasar dikabulkan atau ditolaknya tindakan tersebut. Anda tidak dapat menentukan secara spesifik prinsipal dalam sebuah kebijakan berbasis identitas karena prinsipal berlaku bagi pengguna atau peran yang melekat kepadanya. Untuk mempelajari semua elemen yang dapat Anda gunakan dalam kebijakan JSON, lihat Referensi elemen kebijakan JSON IAM dalam Panduan Pengguna IAM.
Contoh kebijakan berbasis identitas untuk Managed Service untuk Apache Flink
Untuk melihat contoh Layanan Terkelola untuk kebijakan berbasis identitas Apache Flink, lihat. Contoh kebijakan berbasis identitas untuk Amazon Managed Service untuk Apache Flink
Kebijakan berbasis sumber daya dalam Layanan Terkelola untuk Apache Flink
Amazon Managed Service untuk Apache Flink saat ini tidak mendukung kontrol akses berbasis sumber daya.
Daftar kontrol akses (ACLs) di Layanan Terkelola untuk Apache Flink
Mendukung ACLs: Tidak
Access control lists (ACLs) mengontrol prinsipal mana (anggota akun, pengguna, atau peran) yang memiliki izin untuk mengakses sumber daya. ACLs mirip dengan kebijakan berbasis sumber daya, meskipun mereka tidak menggunakan format dokumen kebijakan JSON.
Peran layanan untuk Layanan Terkelola untuk Apache Flink
Mendukung peran layanan: Ya
Peran layanan adalah peran IAM yang diambil oleh sebuah layanan untuk melakukan tindakan atas nama Anda. Administrator IAM dapat membuat, mengubah, dan menghapus peran layanan dari dalam IAM. Untuk informasi selengkapnya, lihat Buat sebuah peran untuk mendelegasikan izin ke Layanan AWS dalam Panduan pengguna IAM.
Awas
Mengubah izin untuk peran layanan dapat merusak fungsionalitas Layanan Terkelola untuk Apache Flink. Edit peran layanan hanya jika Layanan Terkelola untuk Apache Flink memberikan panduan untuk melakukannya.
Peran terkait layanan untuk Layanan Terkelola untuk Apache Flink
Mendukung peran terkait layanan: Ya
Peran terkait layanan adalah jenis peran layanan yang ditautkan ke. Layanan AWS Layanan tersebut dapat menjalankan peran untuk melakukan tindakan atas nama Anda. Peran terkait layanan muncul di Anda Akun AWS dan dimiliki oleh layanan. Administrator IAM dapat melihat, tetapi tidak dapat mengedit izin untuk peran terkait layanan.
Untuk detail tentang pembuatan atau manajemen peran terkait layanan, lihat Layanan AWS yang berfungsi dengan IAM. Cari layanan dalam tabel yang memiliki Yes
di kolom Peran terkait layanan. Pilih tautan Ya untuk melihat dokumentasi peran terkait layanan untuk layanan tersebut.