建立 Systems Manager 參數 - AWS Systems Manager

建立 Systems Manager 參數

使用下列主題中的資訊,協助您使用 AWS Systems Manager 主控台、AWS Command Line Interface (AWS CLI) 或 AWS Tools for Windows PowerShell (Tools for Windows PowerShell) 來建立 Systems Manager 參數。

此區段展示如何在測試環境中,使用 Parameter Store 建立、存放和執行參數。它還示範如何搭配使用 Parameter Store 與其他 Systems Manager 功能和 AWS 服務。如需詳細資訊,請參閱 什麼是參數?

關於參數名稱的需求和限制

使用此主題中的資訊,在建立參數時協助您為參數名稱指定有效的值。

此資訊可補充 AWS Systems Manager API 參考PutParameter 主題的詳細資訊,它還提供有關 AllowedPattern (允許的模式)、Description (說明)、KeyId (金鑰 ID)、Overwrite (覆寫)、Type (類型) 以及 Value (值) 等值的資訊。

參數名稱的要求和條件約束包含下列項目:

  • 區分大小寫:參數名稱一律區分大小寫。

  • 空格:參數名稱不可包含空格。

  • 有效字元:參數名稱只能包含下列符號和字母:a-zA-Z0-9_.-

    此外,斜線字元 (/) 用於在參數名稱中描述階層。例如:/Dev/Production/East/Project-ABC/MyParameter

  • 有效的 AMI 格式:當您選擇 aws:ec2:image 做為 String 參數的資料類型時,您輸入的 ID 必須是有效的 AMI ID 格式 ami-12345abcdeEXAMPLE

  • 完整:當您在階層中建立或參考參數時,包含前置正斜線字元 (/)。如果您參考的參數屬於階層一部分,則指定整個階層路徑,包括初始斜線 (/)。

    • 完整參數名稱:MyParameter1/MyParameter2/Dev/Production/East/Project-ABC/MyParameter

    • 非完整參數名稱:MyParameter3/L1

  • 長度:參數名稱的最大長度 (包括參數 Amazon 資源名稱 (ARN) 的完整內容) 為 1011 個字元。例如,下列參數的長度為 65 個字元,而不是 20 個字元:

    arn:aws:ssm:us-east-2:111122223333:parameter/ExampleParameterName
  • 字首:參數名稱的字首不得為「aws」或「ssm」(無論大小寫)。例如,嘗試使用以下名稱建立參數將會失敗及例外狀況:

    • awsTestParameter

    • SSM-testparameter

    • /aws/testparam1

    注意

    當您在 SSM 文件、命令或指令碼中指定參數時,您在語法中包含 ssm。例如:{{ssm:parameter_name}} 及 {{ ssm:parameter-name }},例如 {{ssm:MyParameter}}{{ ssm:MyParameter }}.

  • 唯一性:參數名稱在一個 AWS 區域 中必須是唯一的。例如,Systems Manager 會將以下視為不同的參數,如果它們存在於相同的區域:

    • /Test/TestParam1

    • /TestParam1

    以下範例也都是唯一的:

    • /Test/TestParam1/Logpath1

    • /Test/TestParam1

    不過,如果位在同一區域,則以下範例不是唯一的:

    • /TestParam1

    • TestParam1

  • 階層深度:如果您指定參數階層,階層深度最多為 15 個層級。您可以定義任何層級的參數。以下兩個範例在結構上都是有效的:

    • /Level-1/L2/L3/L4/L5/L6/L7/L8/L9/L10/L11/L12/L13/L14/parameter-name

    • parameter-name

    嘗試建立以下參數將會失敗並出現 HierarchyLevelLimitExceededException 例外狀況:

    • /Level-1/L2/L3/L4/L5/L6/L7/L8/L9/L10/L11/L12/L13/L14/L15/L16/parameter-name

重要

如果使用者擁有路徑的存取權限,則該使用者可存取該路徑的所有層級。例如,如果使用者擁有存取路徑 /a 的許可,則該使用者也可以存取 /a/b。即使使用者在 AWS Identity and Access Management (IAM) 中被明確拒絕存取參數 /a/b,仍可對 /a 以遞迴方式呼叫 GetParametersByPath API 操作,並檢視 /a/b