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 memilik hak akses lebih tinggi 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 sediakan alat yang membantu Anda melindungi data Anda untuk semua layanan dengan prinsip layanan yang telah diberikan akses ke sumber daya di akun Anda.
Kami merekomendasikan menggunakan kunci konteks kondisi SourceAccount global aws: SourceArn dan aws: dalam kebijakan sumber daya untuk membatasi izin yang CodeDeploy memberikan layanan lain ke sumber daya. 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 ingin hanya satu sumber daya yang akan dikaitkan dengan akses lintas layanan. Gunakan aws:SourceAccount
jika Anda ingin sumber daya apa pun di akun itu dikaitkan dengan penggunaan lintas layanan.
Untuk ECS penerapan EC2 /On-Premises, AWS Lambda, dan Amazon reguler, nilai aws:SourceArn
harus menyertakan grup CodeDeploy penerapan yang diizinkan untuk mengambil ARN peran. CodeDeploy IAM
Untuk penerapan ECS biru/hijau Amazon yang dibuat melalui AWS CloudFormation, nilai aws:SourceArn
harus menyertakan CloudFormation tumpukan ARN yang CodeDeploy diizinkan untuk mengambil peran. IAM
Cara paling efektif untuk melindungi dari masalah wakil yang membingungkan adalah dengan menggunakan aws:SourceArn
kunci dengan penuh ARN sumber daya. Jika Anda tidak tahu lengkap ARN atau jika Anda menentukan beberapa sumber daya, gunakan karakter wildcard (*) untuk bagian yang tidak diketahui.
Misalnya, Anda dapat menggunakan kebijakan kepercayaan berikut dengan penerapan EC2 /Lokal, AWS Lambda, atau Amazon biasa: ECS
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "codedeploy.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
111122223333
" }, "StringLike": { "aws:SourceArn": "arn:aws:codedeploy:us-east-1
:111122223333
:deploymentgroup:myApplication
/*" } } } ] }
Untuk penerapan ECS biru/hijau Amazon yang dibuat melalui AWS CloudFormation, Anda dapat menggunakan:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "codedeploy.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
111122223333
" }, "StringLike": { "aws:SourceArn": "arn:aws:cloudformation:us-east-1
:111122223333
:stack/MyCloudFormationStackName
/*" } } } ] }