Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membuat IAM peran untuk mesin status Anda di Step Functions
AWS Step Functions dapat mengeksekusi kode dan akses AWS sumber daya (seperti memanggil AWS Lambda fungsi). Untuk menjaga keamanan, Anda harus memberikan Step Functions akses ke sumber daya tersebut dengan menggunakan IAM peran.
Tutorial untuk mempelajari Step FunctionsDalam panduan ini memungkinkan Anda untuk mengambil keuntungan dari IAM peran yang dihasilkan secara otomatis yang valid untuk AWS Wilayah di mana Anda membuat mesin negara. Namun, Anda dapat membuat IAM peran Anda sendiri untuk mesin negara.
Saat membuat IAM kebijakan untuk digunakan mesin status Anda, kebijakan tersebut harus menyertakan izin yang Anda ingin diasumsikan oleh mesin status. Anda dapat menggunakan yang sudah ada AWS kebijakan terkelola sebagai contoh atau Anda dapat membuat kebijakan khusus dari awal yang memenuhi kebutuhan spesifik Anda. Untuk informasi selengkapnya, lihat Membuat IAM kebijakan di Panduan IAM Pengguna
Untuk membuat IAM peran Anda sendiri untuk mesin negara, ikuti langkah-langkah di bagian ini.
Dalam contoh ini, Anda membuat IAM peran dengan izin untuk menjalankan fungsi Lambda.
Buat peran untuk Step Functions
-
Masuk ke IAMkonsol
, lalu pilih Peran, Buat peran. -
Pada halaman Pilih entitas tepercaya, di bawah AWS Layanan, pilih Step Functions dari daftar, dan kemudian pilih Berikutnya: Izin.
-
Di halaman Kebijakan izin terlampir, pilih Berikutnya: Tinjau .
-
Pada halaman Tinjau, masukkan
StepFunctionsLambdaRole
untuk Nama Peran, lalu pilih Buat peran.IAMPeran tersebut muncul dalam daftar peran.
Untuk informasi selengkapnya tentang IAM izin dan kebijakan, lihat Manajemen Akses di Panduan IAM Pengguna.
Mencegah masalah wakil lintas layanan yang membingungkan
Masalah deputi yang bingung adalah masalah keamanan di mana entitas yang tidak memiliki izin untuk melakukan tindakan dapat memaksa entitas yang lebih istimewa untuk melakukan tindakan. Masuk AWS, peniruan lintas layanan dapat mengakibatkan masalah wakil yang membingungkan. Peniruan identitas lintas layanan dapat terjadi ketika satu layanan (layanan yang dipanggil) memanggil layanan lain (layanan yang dipanggil). Jenis peniruan identitas ini dapat terjadi lintas akun dan lintas layanan. Layanan pemanggilan dapat dimanipulasi menggunakan izinnya untuk bertindak pada sumber daya pelanggan lain dengan cara yang seharusnya tidak dilakukannya kecuali bila memiliki izin untuk mengakses.
Untuk mencegah deputi yang bingung, AWS menyediakan alat yang membantu Anda melindungi data Anda untuk semua layanan dengan prinsip layanan yang telah diberikan akses ke sumber daya di akun Anda. Bagian ini berfokus pada pencegahan wakil kebingungan lintas layanan khusus untuk AWS Step Functions; Namun, Anda dapat mempelajari lebih lanjut tentang topik ini di bagian masalah wakil yang membingungkan dari Panduan IAM Pengguna.
Sebaiknya gunakan kunci konteks kondisi aws:SourceAccount
global aws:SourceArn
dan global dalam kebijakan sumber daya untuk membatasi izin yang Step Functions memberikan layanan lain untuk mengakses sumber daya Anda. Gunakan aws:SourceArn
jika Anda hanya ingin satu sumber daya dikaitkan dengan akses lintas layanan. Gunakan aws:SourceAccount
jika Anda ingin mengizinkan sumber daya apa pun di akun tersebut dikaitkan dengan penggunaan lintas layanan.
Cara paling efektif untuk melindungi dari masalah wakil yang membingungkan adalah dengan menggunakan kunci konteks kondisi aws:SourceArn
global dengan penuh ARN sumber daya. Jika Anda tidak mengetahui sumber daya yang lengkapARN, atau jika Anda menentukan beberapa sumber daya, gunakan kunci kondisi konteks aws:SourceArn
global dengan karakter wildcard (*
) untuk bagian yang tidak diketahui dari file. ARN Misalnya, arn:aws:states:*:111122223333:*
.
Berikut adalah contoh kebijakan tepercaya yang menunjukkan bagaimana Anda dapat menggunakan aws:SourceArn
dan aws:SourceAccount
dengan Step Functions untuk mencegah masalah deputi yang membingungkan.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":[ "states.amazonaws.com" ] }, "Action":"sts:AssumeRole", "Condition":{ "ArnLike":{ "aws:SourceArn":"arn:aws:states:us-east-1:111122223333:stateMachine:*" }, "StringEquals":{ "aws:SourceAccount":"111122223333" } } } ] }
Melampirkan Kebijakan Sebaris
Step Functions dapat mengontrol layanan lain secara langsung dalam suatu Task
keadaan. Lampirkan kebijakan inline untuk memungkinkan Step Functions mengakses API tindakan layanan yang perlu Anda kontrol.
-
Buka IAMkonsol
, pilih Peran, cari peran Step Functions, dan pilih peran tersebut. -
Pilih Tambahkan kebijakan sebaris.
-
Gunakan editor Visual atau JSONtab untuk membuat kebijakan untuk peran Anda.
Untuk informasi lebih lanjut tentang caranya AWS Step Functions dapat mengontrol lainnya AWS layanan, lihatMengintegrasikan layanan dengan Step Functions.
catatan
Untuk contoh IAM kebijakan yang dibuat oleh konsol Step Functions, lihatBagaimana Step Functions menghasilkan IAM kebijakan untuk layanan terintegrasi.