Pencegahan confused deputy lintas layanan - Amazon Managed Streaming untuk Apache Kafka

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

Pencegahan 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. Pada tahun 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). 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 hal ini, AWS menyediakan alat yang membantu Anda melindungi data untuk semua layanan dengan pengguna utama layanan yang telah diberi akses ke sumber daya di akun Anda.

Sebaiknya gunakan kunci konteks kondisi aws:SourceAccountglobal aws:SourceArndan global dalam kebijakan sumber daya untuk membatasi izin yang diberikan MSK Connect kepada layanan lain ke sumber daya. Jika aws:SourceArn nilai tidak berisi ID akun (misalnya, ARN bucket Amazon S3 tidak berisi ID akun), Anda harus menggunakan kedua kunci konteks kondisi global untuk membatasi izin. Jika Anda menggunakan kunci konteks kondisi global dan nilai aws:SourceArn berisi ID akun, nilai aws:SourceAccount dan akun dalam nilai aws:SourceArn harus menggunakan ID akun yang sama saat digunakan dalam pernyataan kebijakan yang sama. 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.

Dalam kasus MSK Connect, nilai aws:SourceArn harus berupa konektor MSK.

Cara paling efektif untuk melindungi dari masalah confused deputy adalah dengan menggunakan kunci konteks kondisi global aws:SourceArn dengan ARN lengkap sumber daya. Jika Anda tidak mengetahui ARN lengkap sumber daya atau jika Anda menentukan beberapa sumber daya, gunakan kunci kondisi konteks aws:SourceArn global dengan wildcard (*) untuk bagian ARN yang tidak diketahui. Misalnya, arn:aws:kafkaconnect:us-east- 1:123456789012:connector/* mewakili semua konektor yang termasuk dalam akun dengan ID 123456789012 di Wilayah AS Timur (Virginia N.).

Contoh berikut menunjukkan bagaimana Anda dapat menggunakan aws:SourceArn dan kunci konteks kondisi aws:SourceAccount global di MSK Connect untuk mencegah masalah wakil bingung. Ganti Account-ID dan MSK-Connector-ARN dengan informasi Anda.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": " kafkaconnect.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "Account-ID" }, "ArnLike": { "aws:SourceArn": "MSK-Connector-ARN" } } } ] }