

• AWS Systems Manager CloudWatch ダッシュボードは、2026 年 4 月 30 日以降は利用できなくなります。お客様は、これまでと同様に Amazon CloudWatch コンソールを使用して、Amazon CloudWatch ダッシュボードの表示、作成、管理を継続できます。詳細については、「[Amazon CloudWatch ダッシュボードのドキュメント](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)」を参照してください。

# Session Manager 設定の更新 (コマンドライン)
<a name="getting-started-configure-preferences-cli"></a>

以下の手順では、好みのコマンドラインツールを使用して、選択した AWS リージョン で AWS アカウント の AWS Systems Manager Session Manager 設定を変更する方法を説明します。Session Manager の設定を用いて、Amazon Simple Storage Service (Amazon S3) バケットまたは Amazon CloudWatch Logs ロググループにセッションデータを記録するためのオプションを指定します。Session Manager 設定を使用して、セッションデータを暗号化することもできます。

**Session Manager 設定を更新するには (コマンドライン)**

1. `SessionManagerRunShell.json` などの名前でローカルマシンに JSON ファイルを作成し、次の内容を貼り付けます。

   ```
   {
       "schemaVersion": "1.0",
       "description": "Document to hold regional settings for Session Manager",
       "sessionType": "Standard_Stream",
       "inputs": {
           "s3BucketName": "",
           "s3KeyPrefix": "",
           "s3EncryptionEnabled": true,
           "cloudWatchLogGroupName": "",
           "cloudWatchEncryptionEnabled": true,
           "cloudWatchStreamingEnabled": false,
           "kmsKeyId": "",
           "runAsEnabled": true,
           "runAsDefaultUser": "",
           "idleSessionTimeout": "",
           "maxSessionDuration": "",
           "shellProfile": {
               "windows": "date",
               "linux": "pwd;ls"
           }
       }
   }
   ```

1. セッションデータを送信する場所を指定します。(オプションでプレフィックスが付いた) S3 バケット名または CloudWatch Logs ロググループ名を指定することができます。ローカルクライアントとマネージドノード間でデータをさらに暗号化する場合、暗号化に使用する AWS KMS key キーを指定します。以下に例を示します。

   ```
   {
     "schemaVersion": "1.0",
     "description": "Document to hold regional settings for Session Manager",
     "sessionType": "Standard_Stream",
     "inputs": {
       "s3BucketName": "amzn-s3-demo-bucket",
       "s3KeyPrefix": "MyS3Prefix",
       "s3EncryptionEnabled": true,
       "cloudWatchLogGroupName": "MyLogGroupName",
       "cloudWatchEncryptionEnabled": true,
       "cloudWatchStreamingEnabled": false,
       "kmsKeyId": "MyKMSKeyID",
       "runAsEnabled": true,
       "runAsDefaultUser": "MyDefaultRunAsUser",
       "idleSessionTimeout": "20",
       "maxSessionDuration": "60",
       "shellProfile": {
           "windows": "MyCommands",
           "linux": "MyCommands"
       }
     }
   }
   ```
**注記**  
セッションログデータを暗号化しない場合は、`s3EncryptionEnabled` の「`true`」を「`false`」に変更します。  
Amazon S3 バケットまたは CloudWatch Logs ロググループにログを送信しない場合、アクティブなセッションデータを暗号化しない場合、またはアカウントのセッションの Run As サポートを有効にしない場合は、それらのオプション用に次の行を削除できます。「`inputs`」セクションの最後の行がカンマで終わっていないことを確認してください。  
セッションデータを暗号化するために KMS キー ID を追加する場合、セッションを開始するユーザーとそのユーザーが接続するマネージドノードの両方が、キーを使用する許可が必要になります。AWS Identity and Access Management (IAM) ポリシーを使用して、Session Manager で KMS キーを使用するアクセス許可を付与します。詳細については、以下のトピックを参照してください。  
アカウント内のユーザーに AWS KMS アクセス権限を追加します: [Session Manager のサンプル IAM ポリシー](getting-started-restrict-access-quickstart.md)。
アカウント内のマネージドノードに AWS KMS 権限を追加します: [ステップ 2: Session Manager のインスタンスのアクセス権限の確認または追加](session-manager-getting-started-instance-profile.md)。

1. ファイルを保存します。

1. JSON ファイルを作成したディレクトリで、次のコマンドを実行します。

------
#### [ Linux & macOS ]

   ```
   aws ssm update-document \
       --name "SSM-SessionManagerRunShell" \
       --content "file://SessionManagerRunShell.json" \
       --document-version "\$LATEST"
   ```

------
#### [  Server   ]

   ```
   aws ssm update-document ^
       --name "SSM-SessionManagerRunShell" ^
       --content "file://SessionManagerRunShell.json" ^
       --document-version "$LATEST"
   ```

------
#### [   PowerShell   ]

   ```
   Update-SSMDocument `
       -Name "SSM-SessionManagerRunShell" `
       -Content (Get-Content -Raw SessionManagerRunShell.json) `
       -DocumentVersion '$LATEST'
   ```

------

   成功すると、コマンドは以下のような出力を返します。

   ```
   {
       "DocumentDescription": {
           "Status": "Updating",
           "Hash": "ce4fd0a2ab9b0fae759004ba603174c3ec2231f21a81db8690a33eb66EXAMPLE",
           "Name": "SSM-SessionManagerRunShell",
           "Tags": [],
           "DocumentType": "Session",
           "PlatformTypes": [
               "Windows",
               "Linux"
           ],
           "DocumentVersion": "2",
           "HashType": "Sha256",
           "CreatedDate": 1537206341.565,
           "Owner": "111122223333",
           "SchemaVersion": "1.0",
           "DefaultVersion": "1",
           "DocumentFormat": "JSON",
           "LatestVersion": "2"
       }
   }
   ```