View a markdown version of this page

Contoh kebijakan IAM untuk Manajer Sesi - AWS Systems Manager

• AWS Systems Manager CloudWatch Dasbor tidak akan lagi tersedia setelah 30 April 2026. Pelanggan dapat terus menggunakan CloudWatch konsol Amazon untuk melihat, membuat, dan mengelola dasbor Amazon CloudWatch mereka, seperti yang mereka lakukan hari ini. Untuk informasi selengkapnya, lihat dokumentasi CloudWatch Dasbor Amazon.

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

Contoh kebijakan IAM untuk Manajer Sesi

Gunakan contoh di bagian ini untuk membantu Anda membuat kebijakan AWS Identity and Access Management (IAM) yang menyediakan izin yang paling umum diperlukan untuk Session Manager akses.

catatan

Anda juga dapat menggunakan AWS KMS key kebijakan untuk mengontrol entitas IAM mana (pengguna atau peran) yang Akun AWS diberikan akses ke kunci KMS Anda. Untuk selengkapnya, lihat Ring kasan Mengelola Akses ke Sumber AWS KMS Daya Anda dan Menggunakan Kebijakan AWS KMS Utama di Panduan AWS Key Management Service Pengembang.

Kebijakan pengguna akhir Quickstart untuk Manajer Sesi

Gunakan contoh berikut untuk membuat kebijakan pengguna akhir IAM untukSession Manager.

Anda dapat membuat kebijakan yang memungkinkan pengguna memulai sesi hanya dari Session Manager konsol dan AWS Command Line Interface (AWS CLI), hanya dari konsol Amazon Elastic Compute Cloud (Amazon EC2), atau dari ketiganya.

Kebijakan ini memberi pengguna akhir kemampuan untuk memulai sesi ke node terkelola tertentu dan kemampuan untuk hanya mengakhiri sesi mereka sendiri. Lihat Contoh kebijakan IAM tambahan untuk Manajer Sesi untuk contoh kustomisasi yang mungkin ingin Anda buat pada kebijakan.

Dalam contoh kebijakan berikut, ganti masing-masing example resource placeholder dengan informasi Anda sendiri.

Pilih dari tab berikut untuk melihat kebijakan sampel untuk berbagai akses sesi yang ingin Anda berikan.

Manajer Sesi and Fleet Manager

Gunakan kebijakan sampel ini untuk memberi pengguna kemampuan untuk memulai dan melanjutkan sesi hanya dari Fleet Manager konsol Session Manager dan.

JSON
JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:instance/i-02573cafcfEXAMPLE", "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell" ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-name" } ] }
Amazon EC2

Gunakan kebijakan contoh ini untuk memberi pengguna kemampuan untuk memulai dan melanjutkan sesi hanya dari konsol Amazon EC2. Kebijakan ini tidak menyediakan semua izin yang diperlukan untuk memulai sesi dari Session Manager konsol dan AWS CLI.

JSON
JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:instance/i-02573cafcfEXAMPLE", "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell" ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:username}-*" ] } ] }
AWS CLI

Gunakan kebijakan sampel ini untuk memberi pengguna kemampuan untuk memulai dan melanjutkan sesi dari AWS CLI.

JSON
JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:instance/i-02573cafcfEXAMPLE", "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell" ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-name" } ] }
catatan

SSM-SessionManagerRunShelladalah nama default dokumen SSM yang dibuat untuk Session Manager menyimpan preferensi konfigurasi sesi Anda. Anda dapat membuat dokumen Sesi khusus dan menetapkannya dalam kebijakan ini sebagai gantinya. Anda juga dapat menentukan yang diberikan AWS pada dokumen AWS-StartSSHSession untuk pengguna yang memulai sesi menggunakan SSH. Untuk informasi tentang langkah-langkah konfigurasi yang diperlukan untuk mendukung sesi menggunakan SSH, lihat (Opsional) Izinkan dan mengontrol izin untuk koneksi SSH melalui Session Manager.

Iz kms:GenerateDataKey in memungkinkan pembuatan kunci enkripsi data yang akan digunakan untuk mengenkripsi data sesi. Jika Anda menggunakan enkripsi AWS Key Management Service (AWS KMS) untuk data sesi, ganti key-name dengan Amazon Resource Name (ARN) dari kunci KMS yang ingin Anda gunakan, dalam formatarn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-12345EXAMPLE. Jika Anda tidak akan menggunakan enkripsi kunci KMS untuk data sesi Anda, hapus konten berikut dari kebijakan.

{ "Effect": "Allow", "Action": [ "kms:GenerateDataKey" ], "Resource": "key-name" }

Untuk informasi tentang menggunakan AWS KMS untuk mengenkripsi data sesi, lihatAktifkan enkripsi kunci KMS data sesi (konsol).

Izin SendCommand diperlukan untuk kasus di mana pengguna mencoba memulai sesi dari konsol Amazon EC2, tetapi SSM Agent harus diperbarui ke versi minimum yang diperlukan terlebih Session Manager dahulu. Run Commanddigunakan untuk mengirim perintah ke instance untuk memperbarui agen.

Kebijakan administrator Quickstart untuk Manajer Sesi

Gunakan contoh berikut untuk membuat kebijakan administrator IAM untukSession Manager.

Kebijakan ini memberi administrator kemampuan untuk memulai sesi ke node terkelola yang diberi tagKey=Finance,Value=WebServers, izin untuk membuat, memperbarui, dan menghapus preferensi, dan izin untuk hanya mengakhiri sesi mereka sendiri. Lihat Contoh kebijakan IAM tambahan untuk Manajer Sesi untuk contoh kustomisasi yang mungkin ingin Anda buat pada kebijakan.

Anda dapat membuat kebijakan yang memungkinkan administrator untuk melakukan tugas-tugas ini hanya dari Session Manager konsol dan AWS CLI, hanya dari konsol Amazon EC2, atau dari ketiganya.

Dalam contoh kebijakan berikut, ganti masing-masing example resource placeholder dengan informasi Anda sendiri.

Pilih dari tab berikut untuk melihat kebijakan sampel untuk skenario akses yang ingin Anda dukung.

Manajer Sesi and CLI

Gunakan kebijakan sampel ini untuk memberi administrator kemampuan untuk melakukan tugas terkait sesi hanya dari Session Manager konsol dan. AWS CLI Kebijakan ini tidak memberikan semua izin yang diperlukan untuk melakukan tugas terkait sesi dari konsol Amazon EC2.

JSON
JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:*:111122223333:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/Finance": [ "WebServers" ] } } }, { "Effect": "Allow", "Action": [ "ssmmessages:OpenDataChannel" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:CreateDocument", "ssm:UpdateDocument", "ssm:GetDocument", "ssm:StartSession" ], "Resource": "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell" }, { "Effect": "Allow", "Action": [ "ssmmessages:OpenDataChannel" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }
Amazon EC2

Gunakan kebijakan contoh ini untuk memberi administrator kemampuan untuk melakukan tugas terkait sesi hanya dari konsol Amazon EC2. Kebijakan ini tidak menyediakan semua izin yang diperlukan untuk melakukan tugas terkait sesi dari Session Manager konsol dan. AWS CLI

JSON
JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/tag-key": [ "tag-value" ] } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell" ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }
Manajer Sesi, CLI, and Amazon EC2

Gunakan kebijakan contoh ini untuk memberi administrator kemampuan untuk melakukan tugas terkait sesi dari Session Manager konsol, konsol AWS CLI, dan Amazon EC2.

JSON
JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/tag-key": [ "tag-value" ] } } }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:CreateDocument", "ssm:UpdateDocument", "ssm:GetDocument", "ssm:StartSession" ], "Resource": "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }
catatan

Izin SendCommand diperlukan untuk kasus di mana pengguna mencoba memulai sesi dari konsol Amazon EC2, tetapi perintah harus dikirim untuk memperbarui terlebih SSM Agent dahulu.