

• 2026 年 4 月 30 日之後， AWS Systems Manager CloudWatch Dashboard 將不再可用。客戶可以繼續使用 Amazon CloudWatch 主控台來檢視、建立和管理其 Amazon CloudWatch 儀表板，就像現在一樣。如需詳細資訊，請參閱 [Amazon CloudWatch Dashboard 文件](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 建立Parameter Store參數 AWS CLI
<a name="param-create-cli"></a>

您可以使用 AWS Command Line Interface (AWS CLI) 來建立 `String`、 `StringList`和 `SecureString` 參數類型。刪除參數後，請等待至少 30 秒以建立具有相同名稱的參數。

不能在其他參數的值中參考或巢套參數。參數值中不能包含 `{{}}` 或 `{{ssm:parameter-name}}`。

**注意**  
參數僅適用於建立參數 AWS 區域 的 。

**Topics**
+ [使用 建立`String`參數 AWS CLI](#param-create-cli-string)
+ [使用 建立 StringList 參數 AWS CLI](#param-create-cli-stringlist)
+ [使用 建立 SecureString 參數 AWS CLI](#param-create-cli-securestring)
+ [使用 建立多行參數 AWS CLI](#param-create-cli-multiline)

## 使用 建立`String`參數 AWS CLI
<a name="param-create-cli-string"></a>

1. 如果您尚未安裝並設定 AWS Command Line Interface (AWS CLI)，請安裝並設定 。

   如需相關資訊，請參閱[安裝或更新最新版本的 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)。

1. 請執行以下命令以建立 `String`-類參數。將每個*範例資源預留位置*取代為您自己的資訊。

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

   ```
   aws ssm put-parameter \
       --name "parameter-name" \
       --value "parameter-value" \
       --type String \
       --tags "Key=tag-key,Value=tag-value"
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "parameter-name" ^
       --value "parameter-value" ^
       --type String ^
       --tags "Key=tag-key,Value=tag-value"
   ```

------

   -或-

   執行下列命令，以建立包含 Amazon Machine Image (AMI) ID 做為參數值的參數。

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

   ```
   aws ssm put-parameter \
       --name "parameter-name" \
       --value "an-AMI-id" \
       --type String \
       --data-type "aws:ec2:image" \
       --tags "Key=tag-key,Value=tag-value"
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "parameter-name" ^
       --value "an-AMI-id" ^
       --type String ^
       --data-type "aws:ec2:image" ^
       --tags "Key=tag-key,Value=tag-value"
   ```

------

   `--name` 選項支援階層。如需有關階層的詳細資訊，請參閱[在 Parameter Store 中使用參數階層](sysman-paramstore-hierarchies.md)。

   只有在建立包含 AMI ID 的參數時，才需要指定 `--data-type` 選項。它會驗證您輸入的參數值是否為格式正確的 Amazon Elastic Compute Cloud (Amazon EC2) AMI ID。對於所有其他參數，預設資料類型為 `text`，可選擇指定一個值。如需詳細資訊，請參閱[使用 Parameter Store 中 Amazon Machine Image ID 的原生參數支援](parameter-store-ec2-aliases.md)。
**重要**  
如果成功，該命令將會傳回參數的版本號碼。**例外狀況**：如果您已將 `aws:ec2:image` 指定為資料類型，則回應中的新版本號碼並不表示參數值已經過驗證。如需詳細資訊，請參閱[使用 Parameter Store 中 Amazon Machine Image ID 的原生參數支援](parameter-store-ec2-aliases.md)。

   此範例將兩個索引鍵/值對標籤新增至參數。

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

   ```
   aws ssm put-parameter \
       --name parameter-name \
       --value "parameter-value" \
       --type "String" \
       --tags '[{"Key":"Region","Value":"East"},{"Key":"Environment", "Value":"Production"}]'
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name parameter-name ^
       --value "parameter-value" ^
       --type "String" ^
       --tags [{\"Key\":\"Region1\",\"Value\":\"East1\"},{\"Key\":\"Environment1\",\"Value\":\"Production1\"}]
   ```

------

   以下範例在名稱中使用參數階層來建立純文字 `String` 參數。傳回參數的版本號碼。如需參數階層的詳細資訊，請參閱[在 Parameter Store 中使用參數階層](sysman-paramstore-hierarchies.md)。

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

   **不在階層中的參數**

   ```
   aws ssm put-parameter \
       --name "golden-ami" \
       --type "String" \
       --value "ami-12345abcdeEXAMPLE"
   ```

   **在階層中的參數**

   ```
   aws ssm put-parameter \
       --name "/amis/linux/golden-ami" \
       --type "String" \
       --value "ami-12345abcdeEXAMPLE"
   ```

------
#### [ Windows ]

   **不在階層中的參數**

   ```
   aws ssm put-parameter ^
       --name "golden-ami" ^
       --type "String" ^
       --value "ami-12345abcdeEXAMPLE"
   ```

   **在階層中的參數**

   ```
   aws ssm put-parameter ^
       --name "/amis/windows/golden-ami" ^
       --type "String" ^
       --value "ami-12345abcdeEXAMPLE"
   ```

------

1. 執行下列命令以檢視最新的參數值，並確認新參數的詳細資訊。

   ```
   aws ssm get-parameters --names "/Test/IAD/helloWorld"
   ```

   系統會傳回如下資訊。

   ```
   {
       "InvalidParameters": [],
       "Parameters": [
           {            
               "Name": "/Test/IAD/helloWorld",
               "Type": "String",
               "Value": "My updated parameter value",
               "Version": 2,
               "LastModifiedDate": "2020-02-25T15:55:33.677000-08:00",
               "ARN": "arn:aws:ssm:us-east-2:123456789012:parameter/Test/IAD/helloWorld"            
           }
       ]
   }
   ```

執行以下命令，以變更參數值。傳回參數的版本號碼。

```
aws ssm put-parameter --name "/Test/IAD/helloWorld" --value "My updated 1st parameter" --type String --overwrite
```

執行以下命令，以檢視參數值的歷程記錄。

```
aws ssm get-parameter-history --name "/Test/IAD/helloWorld"
```

執行以下命令，以便在命令中使用此參數。

```
aws ssm send-command --document-name "AWS-RunShellScript" --parameters '{"commands":["echo {{ssm:/Test/IAD/helloWorld}}"]}' --targets "Key=instanceids,Values=instance-ids"
```

如果您只想擷取參數值，請執行下列命令。

```
aws ssm get-parameter --name testDataTypeParameter --query "Parameter.Value"
```

如果您只想使用 `get-parameters` 來擷取參數值，請執行下列命令。

```
aws ssm get-parameters --names "testDataTypeParameter" --query "Parameters[*].Value"
```

執行以下命令，以檢視參數中繼資料。

```
aws ssm describe-parameters --filters "Key=Name,Values=/Test/IAD/helloWorld"
```

**注意**  
*名稱* 必須是大寫。

系統會傳回如下資訊。

```
{
    "Parameters": [
        {
            "Name": "helloworld",
            "Type": "String",
            "LastModifiedUser": "arn:aws:iam::123456789012:user/JohnDoe",
            "LastModifiedDate": 1494529763.156,
            "Version": 1,
            "Tier": "Standard",
            "Policies": []           
        }
    ]
}
```

## 使用 建立 StringList 參數 AWS CLI
<a name="param-create-cli-stringlist"></a>

1. 如果您尚未安裝並設定 AWS Command Line Interface (AWS CLI)，請安裝並設定 。

   如需相關資訊，請參閱[安裝或更新最新版本的 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)。

1. 請執行以下命令以建立參數。將每個*範例資源預留位置*取代為您自己的資訊。

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

   ```
   aws ssm put-parameter \
       --name "parameter-name" \
       --value "a-comma-separated-list-of-values" \
       --type StringList \
       --tags "Key=tag-key,Value=tag-value"
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "parameter-name" ^
       --value "a-comma-separated-list-of-values" ^
       --type StringList ^
       --tags "Key=tag-key,Value=tag-value"
   ```

------
**注意**  
如果成功，該命令將會傳回參數的版本號碼。

   此範例將兩個索引鍵/值組新增至參數。根據您的本機電腦的作業系統類型，執行以下其中一個命令。從區域 Windows 機器運行的版本包含從命令列工具執行命令所需的逸出字元 ("\$1"))。

   以下是使用參數階層的 `StringList` 範例。

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

   ```
   aws ssm put-parameter \
       --name /IAD/ERP/Oracle/addUsers \
       --value "Milana,Mariana,Mark,Miguel" \
       --type StringList
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name /IAD/ERP/Oracle/addUsers ^
       --value "Milana,Mariana,Mark,Miguel" ^
       --type StringList
   ```

------
**注意**  
`StringList` 中的項目必須以逗號 (,) 分隔。您無法使用其他標點符號或特殊字元來逸出此清單中的項目。如果您有個參數值需要逗號，那麼請使用 `String` 資料類型。

1. 執行 `get-parameters` 命令，以確認參數的詳細資訊。例如：

   ```
   aws ssm get-parameters --name "/IAD/ERP/Oracle/addUsers"
   ```

## 使用 建立 SecureString 參數 AWS CLI
<a name="param-create-cli-securestring"></a>

使用下列程序建立 `SecureString` 參數。將每個*範例資源預留位置*取代為您自己的資訊。

**重要**  
僅加密 `SecureString` 參數的*值*。參數名稱、說明和其他屬性不會加密。

**重要**  
Parameter Store 只支援[對稱加密 KMS 金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose-key-spec.html#symmetric-cmks)。您無法使用[非對稱加密 KMS 金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)來加密您的參數。如需判斷 KMS 金鑰為對稱或非對稱的說明，請參閱《*AWS Key Management Service 開發人員指南*》中的[識別對稱鍵和非對稱金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html)。

1. 如果您尚未安裝並設定 AWS Command Line Interface (AWS CLI)，請安裝並設定 。

   如需相關資訊，請參閱[安裝或更新最新版本的 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)。

1. 執行以下其中**一**個命令，以建立使用 `SecureString` 資料類型的參數。

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

   **使用預設值建立`SecureString`參數 AWS 受管金鑰 **

   ```
   aws ssm put-parameter \
       --name "parameter-name" \
       --value "parameter-value" \
       --type "SecureString"
   ```

   **建立使用自訂受管金鑰的 `SecureString` 參數**

   ```
   aws ssm put-parameter \
       --name "parameter-name" \
       --value "a-parameter-value, for example P@ssW%rd#1" \
       --type "SecureString"
       --tags "Key=tag-key,Value=tag-value"
   ```

   **建立使用自訂 AWS KMS 金鑰的`SecureString`參數**

   ```
   aws ssm put-parameter \
       --name "parameter-name" \
       --value "a-parameter-value, for example P@ssW%rd#1" \
       --type "SecureString" \
       --key-id "your-account-ID/the-custom-AWS KMS-key" \
       --tags "Key=tag-key,Value=tag-value"
   ```

------
#### [ Windows ]

   **使用預設值建立`SecureString`參數 AWS 受管金鑰**

   ```
   aws ssm put-parameter ^
       --name "parameter-name" ^
       --value "parameter-value" ^
       --type "SecureString"
   ```

   **建立使用自訂受管金鑰的 `SecureString` 參數**

   ```
   aws ssm put-parameter ^
       --name "parameter-name" ^
       --value "a-parameter-value, for example P@ssW%rd#1" ^
       --type "SecureString" ^
       --tags "Key=tag-key,Value=tag-value"
   ```

   **建立使用自訂 AWS KMS 金鑰的`SecureString`參數**

   ```
   aws ssm put-parameter ^
       --name "parameter-name" ^
       --value "a-parameter-value, for example P@ssW%rd#1" ^
       --type "SecureString" ^
       --key-id " ^
       --tags "Key=tag-key,Value=tag-value"account-ID/the-custom-AWS KMS-key"
   ```

------

   如果您在帳戶和區域中使用 AWS 受管金鑰 金鑰 建立 `SecureString` 參數，則*不*必提供 `--key-id` 參數的值。
**注意**  
若要使用 AWS KMS key 指派給您 AWS 帳戶 和 的 AWS 區域，請從 命令中移除 `key-id` 參數。如需 AWS KMS keys的詳細資訊，請參閱《*AWS Key Management Service 開發人員指南*》中的 [AWS Key Management Service 概念](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk)。

   若要使用客戶受管金鑰，而不是 AWS 受管金鑰 指派給您帳戶的 ，請使用 `--key-id` 參數指定金鑰。此參數支援下列 KMS 參數格式。
   + 關鍵 Amazon Resource Name (ARN) 範例：

      `arn:aws:kms:us-east-2:123456789012:key/key-id`
   + 別名 ARN 範例：

     `arn:aws:kms:us-east-2:123456789012:alias/alias-name`
   + Key ID 範例：

     `12345678-1234-1234-1234-123456789012`
   + 別名範例：

     `alias/MyAliasName`

   您可以使用 AWS 管理主控台 或 API 來建立客戶受管 AWS KMS 金鑰。下列 AWS CLI 命令會在 AWS 區域 目前的 中建立客戶受管金鑰 AWS 帳戶。

   ```
   aws kms [create-key](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
   ```

   使用以下格式的命令，以您剛建立的金鑰建立 `SecureString` 參數。

   以下範例使用混淆代碼名稱 (`3l3vat3131`) 作為密碼參數，並使用 AWS KMS key。

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

   ```
   aws ssm put-parameter \
       --name /Finance/Payroll/3l3vat3131 \
       --value "P@sSwW)rd" \
       --type SecureString \
       --key-id arn:aws:kms:us-east-2:123456789012:key/1a2b3c4d-1a2b-1a2b-1a2b-1a2b3c4d5e
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name /Finance/Payroll/3l3vat3131 ^
       --value "P@sSwW)rd" ^
       --type SecureString ^
       --key-id arn:aws:kms:us-east-2:123456789012:key/1a2b3c4d-1a2b-1a2b-1a2b-1a2b3c4d5e
   ```

------

1. 執行以下命令，以驗證參數的詳細資訊。

   如果您不指定 `with-decryption` 參數，或如果您指定了 `no-with-decryption` 參數，命令將會傳回加密的 GUID。

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

   ```
   aws ssm get-parameters \
       --name "the-parameter-name-you-specified" \
       --with-decryption
   ```

------
#### [ Windows ]

   ```
   aws ssm get-parameters ^
       --name "the-parameter-name-you-specified" ^
       --with-decryption
   ```

------

1. 執行以下命令，以檢視參數中繼資料。

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

   ```
   aws ssm describe-parameters \
       --filters "Key=Name,Values=the-name-that-you-specified"
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-parameters ^
       --filters "Key=Name,Values=the-name-that-you-specified"
   ```

------

1. 如果您**不**使用客戶受管 AWS KMS key，請執行下列命令以變更參數值。

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

   ```
   aws ssm put-parameter \
       --name "the-name-that-you-specified" \
       --value "a-new-parameter-value" \
       --type "SecureString" \
       --overwrite
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "the-name-that-you-specified" ^
       --value "a-new-parameter-value" ^
       --type "SecureString" ^
       --overwrite
   ```

------

   -或-

   如果您**使用**客戶受管 AWS KMS key，請執行下列命令之一以變更參數值。

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

   ```
   aws ssm put-parameter \
       --name "the-name-that-you-specified" \
       --value "a-new-parameter-value" \
       --type "SecureString" \
       --key-id "the-KMSkey-ID" \
       --overwrite
   ```

   ```
   aws ssm put-parameter \
       --name "the-name-that-you-specified" \
       --value "a-new-parameter-value" \
       --type "SecureString" \
       --key-id "account-alias/the-KMSkey-ID" \
       --overwrite
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "the-name-that-you-specified" ^
       --value "a-new-parameter-value" ^
       --type "SecureString" ^
       --key-id "the-KMSkey-ID" ^
       --overwrite
   ```

   ```
   aws ssm put-parameter ^
       --name "the-name-that-you-specified" ^
       --value "a-new-parameter-value" ^
       --type "SecureString" ^
       --key-id "account-alias/the-KMSkey-ID" ^
       --overwrite
   ```

------

1. 執行以下命令，以檢視最新的參數值。

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

   ```
   aws ssm get-parameters \
       --name "the-name-that-you-specified" \
       --with-decryption
   ```

------
#### [ Windows ]

   ```
   aws ssm get-parameters ^
       --name "the-name-that-you-specified" ^
       --with-decryption
   ```

------

1. 執行以下命令，以檢視參數值的歷程記錄。

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

   ```
   aws ssm get-parameter-history \
       --name "the-name-that-you-specified"
   ```

------
#### [ Windows ]

   ```
   aws ssm get-parameter-history ^
       --name "the-name-that-you-specified"
   ```

------

**注意**  
您可以手動建立具有加密值的參數。在此案例中，因為值已加密，您無需選擇 `SecureString` 參數類型。如果您選擇 `SecureString`，您的參數將被加密兩次。

依預設，所有 `SecureString` 值都顯示為加密文字。若要解密`SecureString`值，使用者必須具有呼叫 AWS KMS [解密](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) API 操作的許可。如需有關設定 AWS KMS 存取控制的資訊，請參閱《*AWS Key Management Service 開發人員指南*》中的 [​ AWS KMS的身分驗證與存取控制](https://docs.aws.amazon.com/kms/latest/developerguide/control-access.html)。

**重要**  
如果您變更用於加密參數之 KMS 金鑰的 KMS 金鑰別名，則也必須更新參數用來參考 AWS KMS的金鑰別名。這只適用於 KMS 金鑰別名；別名連接的金鑰 ID 會保持不變，除非您刪除整個金鑰。

## 使用 建立多行參數 AWS CLI
<a name="param-create-cli-multiline"></a>

您可以使用 AWS CLI 建立具有換行符號的參數。使用分行符號來分割較長參數值中的文字以提高可讀性，或者更新網頁的多段落參數內容。使用分行字元 (例如 `\n`)，您可以將內容包含在 JSON 檔案中並使用 `--cli-input-json` 選項，如下列範例所示。

1. 如果您尚未安裝並設定 AWS Command Line Interface (AWS CLI)，請安裝並設定 。

   如需相關資訊，請參閱[安裝或更新最新版本的 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)。

1. 執行下列命令以建立多列參數。

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

   ```
   aws ssm put-parameter \
       --name "MultiLineParameter" \
       --type String \
       --cli-input-json file://MultiLineParameter.json
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "MultiLineParameter" ^
       --type String ^
       --cli-input-json file://MultiLineParameter.json
   ```

------

   下列範例顯示 `MultiLineParameter.json` 檔案的內容。

   ```
   {
       "Value": "<para>Paragraph One</para>\n<para>Paragraph Two</para>\n<para>Paragraph Three</para>"
   }
   ```

儲存的參數值存放如下。

```
<para>Paragraph One</para>
<para>Paragraph Two</para>
<para>Paragraph Three</para>
```