Pencegahan masalah confused deputy lintas layanan - Layanan Basis Data Relasional Amazon

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

Pencegahan 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 panggilan) 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 dilakukannya kecuali bila memiliki izin 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. Untuk informasi selengkapnya, lihat Masalah confused deputy di Panduan Pengguna IAM.

Untuk membatasi izin yang diberikan Amazon RDS ke layanan lain untuk sumber daya tertentu, sebaiknya gunakan kunci konteks kondisi global aws:SourceArn dan aws:SourceAccount di 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 hal 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. Untuk informasi selengkapnya, lihat Bekerja dengan Amazon Resource Name (ARN) di Amazon RDS.

Cara paling efektif untuk melindungi dari masalah confused deputy adalah dengan menggunakan kunci konteks kondisi global aws:SourceArn dengan ARN lengkap sumber daya. Dalam beberapa kasus, Anda mungkin tidak mengetahui ARN lengkap sumber daya atau mungkin Anda menentukan beberapa sumber daya. Dalam hal 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 cara 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: