

• 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 CloudWatch dasbor Amazon mereka, seperti yang mereka lakukan hari ini. Untuk informasi selengkapnya, lihat [dokumentasi CloudWatch Dasbor Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

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

# Contoh tambahan kebijakan IAM untuk Session Manager
<a name="getting-started-restrict-access-examples"></a>

Lihat contoh kebijakan berikut untuk membantu Anda membuat kebijakan kustom AWS Identity and Access Management (IAM) untuk setiap skenario akses Session Manager pengguna yang ingin Anda dukung.

**Topics**
+ [Contoh 1: Berikan akses ke dokumen di konsol](#grant-access-documents-console-example)
+ [Contoh 2: Batasi akses ke node terkelola tertentu](#restrict-access-example-instances)
+ [Contoh 3: Batasi akses berdasarkan tag](#restrict-access-example-instance-tags)
+ [Contoh 4: Izinkan pengguna untuk mengakhiri hanya sesi yang mereka mulai](#restrict-access-example-user-sessions)
+ [Contoh 5: Izinkan akses penuh (administratif) ke semua sesi](#restrict-access-example-full-access)

## Contoh 1: Berikan akses ke dokumen di konsol
<a name="grant-access-documents-console-example"></a>

Anda dapat mengizinkan pengguna menentukan dokumen kustom saat mereka meluncurkan sesi menggunakan konsol Pengelola Sesi. Contoh berikut kebijakan IAM memberikan izin untuk mengakses dokumen dengan nama yang dimulai dengan **SessionDocument-** yang ditentukan Wilayah AWS dan. Akun AWS

Untuk menggunakan kebijakan ini, ganti masing-masing *example resource placeholder* dengan informasi Anda sendiri.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetDocument",
                "ssm:ListDocuments"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SessionDocument-*"
            ]
        }
    ]
}
```

------

**catatan**  
Konsol Session Manager hanya mendukung dokumen Session `sessionType` yang memiliki `Standard_Stream` yang digunakan untuk menentukan preferensi sesi. Untuk informasi selengkapnya, lihat [Skema dokumen sesi](session-manager-schema.md).

## Contoh 2: Batasi akses ke node terkelola tertentu
<a name="restrict-access-example-instances"></a>

Anda dapat membuat kebijakan IAM yang menentukan node terkelola mana yang diizinkan untuk disambungkan oleh pengguna menggunakan Session Manager. Misalnya, kebijakan berikut memberi pengguna izin untuk memulai, mengakhiri, dan melanjutkan sesi mereka pada tiga node tertentu. Kebijakan membatasi pengguna untuk menyambung ke node selain yang ditentukan.

**catatan**  
Untuk pengguna federasi, lihat[Contoh 4: Izinkan pengguna untuk mengakhiri hanya sesi yang mereka mulai](#restrict-access-example-user-sessions).

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:instance/i-1234567890EXAMPLE",
                "arn:aws:ec2:us-east-1:111122223333:instance/i-abcdefghijEXAMPLE",
                "arn:aws:ec2:us-east-1:111122223333:instance/i-0e9d8c7b6aEXAMPLE",
                "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": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       }
    ]
}
```

------

## Contoh 3: Batasi akses berdasarkan tag
<a name="restrict-access-example-instance-tags"></a>

Anda dapat membatasi akses ke node terkelola berdasarkan tag tertentu. Dalam contoh berikut, pengguna diizinkan untuk memulai dan melanjutkan sesi (`Effect: Allow, Action: ssm:StartSession, ssm:ResumeSession`) pada setiap node terkelola (`Resource: arn:aws:ec2:region:987654321098:instance/*`) dengan syarat bahwa node tersebut adalah Finance WebServer (`ssm:resourceTag/Finance: WebServer`). Jika pengguna mengirim perintah ke node terkelola yang tidak diberi tag atau yang memiliki tag selain`Finance: WebServer`, hasil perintah akan disertakan`AccessDenied`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:instance/*"
            ],
            "Condition": {
                "StringLike": {
                    "ssm:resourceTag/Finance": [
                        "WebServers"
                    ]
                }
            }
        },
        {
         "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": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
        }
    ]
}
```

------

Anda dapat membuat kebijakan IAM yang memungkinkan pengguna memulai sesi ke node terkelola yang ditandai dengan beberapa tag. Kebijakan berikut memungkinkan pengguna untuk memulai sesi ke node terkelola yang memiliki kedua tag yang ditentukan diterapkan padanya. Jika pengguna mengirim perintah ke node terkelola yang tidak ditandai dengan kedua tag ini, hasil perintah akan disertakan`AccessDenied`.

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "ssm:StartSession"
         ],
         "Resource":"*",
         "Condition":{
            "StringLike":{
               "ssm:resourceTag/tag-key1":[
                  "tag-value1"
               ],
               "ssm:resourceTag/tag-key2":[
                  "tag-value2"
               ]
            }
         }
      },
      {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       },
      {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
      }
   ]
}
```

------

Untuk informasi selengkapnya tentang membuat kebijakan IAM, lihat Kebijakan [Terkelola dan Kebijakan Inline](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) di Panduan Pengguna *IAM*. Untuk informasi selengkapnya tentang menandai node terkelola, lihat [Menandai resource Amazon EC2 Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) di Panduan *Pengguna Amazon EC2* (konten berlaku Windows untuk dan node terkelola). Linux Untuk informasi selengkapnya tentang meningkatkan postur keamanan terhadap perintah tingkat root yang tidak sah pada node terkelola, lihat [Membatasi akses ke perintah tingkat root melalui SSM Agent](ssm-agent-restrict-root-level-commands.md)

## Contoh 4: Izinkan pengguna untuk mengakhiri hanya sesi yang mereka mulai
<a name="restrict-access-example-user-sessions"></a>

Session Managermenyediakan dua metode untuk mengontrol sesi mana pengguna federasi di Anda Akun AWS diizinkan untuk mengakhiri.
+ Gunakan variabel `{aws:userid}` dalam kebijakan izin AWS Identity and Access Management (IAM). Pengguna federasi hanya dapat mengakhiri sesi yang mereka mulai. Untuk pengguna yang tidak terfederasi, gunakan Metode 1. Untuk pengguna federasi, gunakan Metode 2.
+ Gunakan tag yang disediakan oleh AWS tag dalam kebijakan izin IAM. Dalam kebijakan, Anda memasukkan ketentuan yang mengizinkan pengguna untuk mengakhiri hanya sesi yang ditandai dengan tanda tertentu yang telah diberikan oleh AWS. Metode ini berfungsi untuk semua akun, termasuk yang menggunakan federasi IDs untuk memberikan akses ke AWS.

### Metode 1: Berikan TerminateSession hak istimewa menggunakan variabel `{aws:username}`
<a name="restrict-access-example-user-sessions-username"></a>

Kebijakan IAM berikut memungkinkan pengguna untuk melihat semua sesi di akun Anda. IDs Namun, pengguna dapat berinteraksi dengan node terkelola hanya melalui sesi yang mereka mulai. Pengguna yang ditetapkan kebijakan berikut tidak dapat terhubung ke atau mengakhiri sesi pengguna lain. Kebijakan menggunakan `{aws:username}` variabel untuk mencapai hal ini.

**catatan**  
Metode ini tidak berfungsi untuk akun yang memberikan akses untuk AWS menggunakan federasi. IDs

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ssm:DescribeSessions"
            ],
            "Effect": "Allow",
            "Resource": [
                "*"
            ]
        },
        {
            "Action": [
                "ssm:TerminateSession"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:ssm:*:*:session/${aws:username}-*"
            ]
        }
    ]
}
```

------

### Metode 2: Berikan TerminateSession hak istimewa menggunakan tag yang disediakan oleh AWS
<a name="restrict-access-example-user-sessions-tags"></a>

Anda dapat mengontrol sesi mana yang dapat diakhiri pengguna dengan menyertakan variabel kunci tag bersyarat dalam kebijakan IAM. Ketentuan menetapkan bahwa pengguna hanya dapat mengakhiri sesi yang ditandai dengan salah satu atau kedua variabel kunci tanda tertentu dan nilai tertentu ini.

Saat pengguna Akun AWS memulai sesi, Session Manager terapkan dua tag sumber daya ke sesi tersebut. Tanda sumber daya pertama adalah `aws:ssmmessages:target-id`, yang dengannya Anda menentukan ID target yang diizinkan untuk diakhiri oleh pengguna. Tag sumber daya lainnya adalah `aws:ssmmessages:session-id`, dengan nilai dalam format `role-id:caller-specified-role-name`.

**catatan**  
Session Managertidak mendukung tag khusus untuk kebijakan kontrol akses IAM ini. Anda harus menggunakan tag sumber daya yang disediakan oleh AWS, dijelaskan di bawah ini. 

 ** `aws:ssmmessages:target-id` **   
Dengan kunci tag ini, Anda menyertakan ID node terkelola sebagai nilai dalam kebijakan. Dalam blok kebijakan berikut, pernyataan kondisi memungkinkan pengguna untuk mengakhiri hanya node I-02573CAFCFExample.    
****  

```
{
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [
                "ssm:TerminateSession"
             ],
             "Resource": "*",
             "Condition": {
                 "StringLike": {
                     "ssm:resourceTag/aws:ssmmessages:target-id": [
                        "i-02573cafcfEXAMPLE"
                     ]
                 }
             }
         }
     ]
}
```
Jika pengguna mencoba untuk mengakhiri sesi yang belum diberi izin `TerminateSession` ini, mereka menerima kesalahan `AccessDeniedException`.

 ** `aws:ssmmessages:session-id` **   
Kunci tanda ini mencakup variabel untuk ID sesi sebagai nilai dalam permintaan untuk memulai sesi.  
Contoh berikut menunjukkan kebijakan untuk kasus di mana tipe pemanggil adalah `User`. Nilai yang Anda sediakan untuk `aws:ssmmessages:session-id` adalah ID pengguna. Dalam contoh ini, `AIDIODR4TAW7CSEXAMPLE` mewakili ID pengguna di Akun AWS Anda. Untuk mengambil ID untuk pengguna di Anda Akun AWS, gunakan perintah IAM,. `get-user` Untuk selengkapnya[, lihat mendapatkan pengguna](https://docs.aws.amazon.com/IAM/latest/UserGuide/get-user.html) di AWS Identity and Access Management bagian Panduan Pengguna *IAM*.     
****  

```
{
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [
                "ssm:TerminateSession"
             ],
             "Resource": "*",
             "Condition": {
                 "StringLike": {
                     "ssm:resourceTag/aws:ssmmessages:session-id": [
                        "AIDIODR4TAW7CSEXAMPLE"
                     ]
                 }
             }
         }
     ]
}
```
Contoh berikut menunjukkan kebijakan untuk kasus di mana tipe pemanggil adalah `AssumedRole`. Anda dapat menggunakan variabel `{aws:userid}` untuk nilai yang Anda sediakan untuk `aws:ssmmessages:session-id`. Atau, Anda dapat hardcode ID peran untuk nilai yang Anda sediakan untuk `aws:ssmmessages:session-id`. Jika Anda hardcode ID peran, Anda harus memberi nilai dalam format `role-id:caller-specified-role-name`. Misalnya, `AIDIODR4TAW7CSEXAMPLE:MyRole`.  
Agar tanda sistem diterapkan, ID peran yang Anda sediakan hanya dapat berisi karakter berikut: huruf Unicode, 0-9, spasi, `_`, `.`, `:`, `/`, `=`, `+`, `-`, `@`, dan `\`.
Untuk mengambil ID peran untuk peran dalam Anda Akun AWS, gunakan `get-caller-identity` perintah. Untuk informasi, lihat [get-caller-identity](https://docs.aws.amazon.com/cli/latest/reference/sts/get-caller-identity.html)di Referensi AWS CLI Perintah.     
****  

```
{
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [
                "ssm:TerminateSession"
             ],
             "Resource": "*",
             "Condition": {
                 "StringLike": {
                     "ssm:resourceTag/aws:ssmmessages:session-id": [
                        "${aws:userid}*"
                     ]
                 }
             }
         }
     ]
}
```
Jika pengguna mencoba mengakhiri sesi yang belum diberi izin `TerminateSession` ini, mereka menerima kesalahan `AccessDeniedException`.

**`aws:ssmmessages:target-id`** dan **`aws:ssmmessages:session-id`**  
Anda juga dapat membuat kebijakan IAM yang mengizinkan pengguna untuk mengakhiri sesi yang ditandai dengan kedua tanda sistem, seperti yang ditunjukkan dalam contoh ini.    
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "ssm:TerminateSession"
         ],
         "Resource":"*",
         "Condition":{
            "StringLike":{
               "ssm:resourceTag/aws:ssmmessages:target-id":[
                  "i-02573cafcfEXAMPLE"
               ],
               "ssm:resourceTag/aws:ssmmessages:session-id":[
                  "${aws:userid}*"
               ]
            }
         }
      }
   ]
}
```

## Contoh 5: Izinkan akses penuh (administratif) ke semua sesi
<a name="restrict-access-example-full-access"></a>

Kebijakan IAM berikut memungkinkan pengguna untuk sepenuhnya berinteraksi dengan semua node terkelola dan semua sesi yang dibuat oleh semua pengguna untuk semua node. Ini harus diberikan hanya kepada Administrator yang membutuhkan kontrol penuh atas Session Manager aktivitas organisasi Anda.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ssm:StartSession",
                "ssm:TerminateSession",
                "ssm:ResumeSession",
                "ssm:DescribeSessions",
                "ssm:GetConnectionStatus"
            ],
            "Effect": "Allow",
            "Resource": [
                "*"
            ]
        },
        {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       }
    ]
}
```

------