Mencegah masalah confused deputy lintas layanan - Amazon Aurora

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

Mencegah masalah confused deputy lintas layanan

Masalah confused deputy adalah masalah keamanan saat entitas yang tidak memiliki izin untuk melakukan suatu tindakan dapat memaksa entitas yang lebih berhak untuk melakukan tindakan tersebut. Di AWS, peniruan identitas lintas layanan dapat mengakibatkan masalah confused deputy.

Peniruan identitas lintas layanan dapat terjadi ketika satu layanan (layanan pemanggil) memanggil layanan lain (layanan yang dipanggil). Layanan panggilan dapat dimanipulasi agar menggunakan izinnya untuk bertindak pada sumber daya pelanggan lain dengan cara yang seharusnya tidak diizinkan untuk mengakses. Untuk mencegah hal ini, AWS menyediakan alat yang dapat membantu Anda melindungi data untuk semua layanan dengan pengguna utama layanan yang telah diberi akses ke sumber daya di akun Anda. Lihat informasi selengkapnya di Masalah confused deputy dalam Panduan Pengguna IAM.

Untuk membatasi izin yang diberikan Amazon RDS kepada layanan lain untuk sumber daya tertentu, sebaiknya gunakan kunci konteks kondisi global aws:SourceArn dan aws:SourceAccount dalam kebijakan sumber daya.

Dalam beberapa kasus, nilai aws:SourceArn tidak berisi ID akun, misalnya saat Anda menggunakan Amazon Resource Name (ARN) untuk bucket Amazon S3. Dalam kasus ini, pastikan untuk menggunakan kedua kunci konteks kondisi global untuk membatasi izin. Dalam beberapa kasus, Anda menggunakan kunci konteks kondisi global dan nilai aws:SourceArn yang berisi ID akun. Dalam kasus ini, pastikan bahwa nilai aws:SourceAccount dan akun dalam nilai aws:SourceArn menggunakan ID akun yang sama ketika digunakan dalam pernyataan yang sama. Jika Anda ingin hanya satu sumber daya yang akan dikaitkan dengan akses lintas layanan, gunakan aws:SourceArn. Jika Anda ingin mengizinkan semua sumber daya di akun AWS yang ditentukan dikaitkan dengan penggunaan lintas layanan, gunakan aws:SourceAccount.

Pastikan nilai aws:SourceArn adalah ARN untuk jenis sumber daya Amazon RDS. Lihat informasi selengkapnya di Nama Sumber Daya Amazon (ARNs) di Amazon RDS.

Cara paling efektif untuk melindungi dari masalah confused deputy adalah dengan menggunakan kunci konteks kondisi global aws:SourceArn dengan ARN sumber daya penuh. Dalam beberapa kasus, Anda mungkin tidak mengetahui ARN lengkap sumber daya atau mungkin Anda menentukan beberapa sumber daya. Dalam kasus ini, gunakan kunci kondisi konteks global aws:SourceArn dengan wildcard (*) untuk bagian ARN yang tidak diketahui. Contohnya adalah arn:aws:rds:*:123456789012:*.

Contoh berikut menunjukkan bagaimana Anda dapat menggunakan aws:SourceArn dan kunci konteks kondisi global aws:SourceAccount di Amazon RDS untuk mencegah masalah confused deputy.

{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:rds:us-east-1:123456789012:db:mydbinstance" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } }

Untuk contoh kebijakan lainnya yang menggunakan kunci konteks kondisi global aws:SourceArn dan aws:SourceAccount, lihat bagian berikut: