管理參數層
Parameter Store (AWS Systems Manager 的一項功能) 包含標準參數和進階參數。您可以將參數個別設定為使用標準參數層級 (預設層級) 或進階參數層級。
您可以將標準參數變更為進階參數,但您無法將進階參數恢復為標準參數。將進階參數還原為標準參數會造成系統將參數的大小從 8 KB 截斷為 4 KB,從而造成資料遺失。還原也會移除連接到參數的任何政策。以外,進階參數使用的加密形式與標準參數不同。如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的 AWS Systems Manager Parameter Store 如何使用 AWS KMS。
如果您不再需要進階參數,或如果您不希望再支付費用,將它刪除,並將它重新建立為新的標準參數。
下表說明層級之間的差異。
標準 | Advanced (進階) | |
---|---|---|
允許的參數總數 (按照 AWS 帳戶 和 AWS 區域) |
10,000 |
100,000 |
參數值的大小上限。 |
4 KB |
8 KB |
是否可使用參數政策 |
否 |
是 如需詳細資訊,請參閱在 Parameter Store 中指派參數政策。 |
成本 |
不收取其他費用 |
需支付費用 如需詳細資訊,請參閱 AWS Systems ManagerParameter Store 的定價 |
指定預設參數層
在建立或更新參數的請求中 (即 PutParameter
操作),您可以指定要在請求中使用的參數層。以下是使用 AWS Command Line Interface (AWS CLI) 的範例。
當您在請求中指定層時,Parameter Store 會根據您的請求建立或更新參數。但是,如果您沒有在請求中明確指定層,Parameter Store 預設層設定會決定要在哪個層建立參數。
標準參數層是在您開始使用 Parameter Store 時的預設層。若您使用進階參數層,您可以指定以下其中一項做為預設:
-
進階:使用此選項,參數存放區會將所有請求評估為進階參數。
-
Intelligent-Tiering:使用此選項,Parameter Store 會評估每個請求,以判斷參數是標準或進階。
若請求並未包含任何需要進階參數的選項,則參數會在標準參數層中建立。若請求中包含一或多個需要進階參數的選項,Parameter Store 便會在進階參數層中建立參數。
Intelligent-Tiering 的優點
以下是您可能會選擇將 Intelligent-Tiering 做為預設層的理由。
成本控制 – Intelligent-Tiering 可透過一律建立標準參數 (除非絕對需要進階參數) 來協助控制您的參數相關成本。
自動升級到進階參數層 – 當您變更程式碼而需要將標準參數升級到進階參數時,Intelligent-Tiering 會為您處理轉換。您不需要變更程式碼即可處理升級。
以下是一些自動升級的範例:
-
您的 AWS CloudFormation 範本會在執行時佈建多個參數。當此程序造成您達到標準參數層中 10,000 個參數配額時,Intelligent-Tiering 會動幫您升級到進階參數層,使您的 AWS CloudFormation 程序無須中斷。
-
您將憑證值存放在參數中,定期輪換憑證值,且內容小於標準參數層的 4 KB 配額。若替換用的憑證值超過 4 KB,Intelligent-Tiering 會自動將參數升級至進階參數層。
-
您希望將多個現有的標準參數與參數政策建立關聯,但參數政策需要進階參數層。Intelligent-Tiering 會自動將參數升級至進階參數層,而不需在所有呼叫中包含
--tier Advanced
選項來更新參數。Intelligent-Tiering 選項會在每次滿足進階參數層的條件時,將參數從標準升級至進階。
需要進階參數的選項包含下列項目:
-
參數的內容大小超過 4 KB。
-
參數使用參數政策。
-
目前 AWS 區域 中您的 AWS 帳戶 內已有超過 10,000 個參數。
預設層選項
您可以指定做為預設的層選項包括下列項目。
-
標準 - 標準參數層是在您開始使用 Parameter Store 時的預設層。使用標準參數層,您可以在 AWS 帳戶 中於每個 AWS 區域 內建立 10,000 個參數。每個參數的內容大小最大可以等於 4 KB。標準參數不支援參數政策。使用標準參數層無須另外付費。選擇 Standard (標準) 做為預設層,表示 Parameter Store 一律會嘗試為沒有指定層的請求建立標準參數。
-
進階 - 使用進階參數層可讓您為 AWS 帳戶 在每個 AWS 區域 中建立最多 100,000 個參數。每個參數的內容大小最大可以等於 8 KB。進階參數支援參數政策。若要共用參數,該參數必須位於進階參數層。使用進階參數層需要付費。如需詳細資訊,請參閱 AWS Systems ManagerParameter Store 的定價
。選擇 Advanced (進階) 做為預設層,表示 Parameter Store 一律會嘗試為沒有指定層的請求建立進階參數。 注意
當您選擇進階參數層時,明確授權 AWS 向您的帳戶收取任何您所建立進階參數的費用。
-
Intelligent-Tiering - Intelligent-Tiering 選項可讓 Parameter Store 根據請求的內容,決定是要使用標準參數層還是進階參數層。例如,若您執行命令建立內容小於 4 KB 的參數,且您 AWS 帳戶 中於目前 AWS 區域 內擁有少於 10,000 個參數,且您沒有指定參數政策,則會建立標準參數。若您執行命令建立內容大於 4 KB 的參數、您的 AWS 帳戶 在目前 AWS 區域 中已有超過 10,000 個參數,或是您指定了參數政策,則會建立進階參數。
注意
當您選擇 Intelligent-Tiering 時,您必須明確授權 AWS 向您的帳戶收取任何所建立進階參數的費用。
您可以隨時變更 Parameter Store 預設層設定。
設定許可來指定Parameter Store預設層
驗證您在 AWS Identity and Access Management (IAM) 中具備許可,可透過執行以下其中一項作業,來變更 Parameter Store 中的預設參數層:
-
確定將
AdministratorAccess
政策連接到您的 IAM 實體 (如使用者、群組或角色)。 -
確認您具備使用下列 API 操作變更預設層設定的許可:
將下列許可授予 IAM 實體,以允許使用者檢視和變更 AWS 帳戶 中特定 AWS 區域 內參數的預設層設定。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetServiceSetting" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:UpdateServiceSetting" ], "Resource": "arn:aws:ssm:
region
:account-id
:servicesetting/ssm/parameter-store/default-parameter-tier" } ] }
管理員可以指派下列許可,以指定唯讀許可。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetServiceSetting" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "ssm:ResetServiceSetting", "ssm:UpdateServiceSetting" ], "Resource": "*" } ] }
若要提供存取權,請新增權限至您的使用者、群組或角色:
-
AWS IAM Identity Center 中的使用者和群組:
建立權限合集。請按照 AWS IAM Identity Center使用者指南 中的 建立權限合集 說明進行操作。
-
透過身分提供者在 IAM 中管理的使用者:
建立聯合身分的角色。遵循《IAM 使用者指南》的為第三方身分提供者 (聯合) 建立角色中的指示。
-
IAM 使用者:
-
建立您的使用者可擔任的角色。請按照 IAM 使用者指南》的為 IAM 使用者建立角色中的指示。
-
(不建議) 將政策直接附加至使用者,或將使用者新增至使用者群組。請遵循 IAM 使用者指南的新增許可到使用者 (主控台)中的指示。
-
使用主控台指定或變更 Parameter Store 預設方案
以下程序示範如何使用 Systems Manager 主控台來指定或變更目前 AWS 帳戶 和AWS 區域 的預設參數層。
提示
如果您尚未建立參數,可以使用 AWS Command Line Interface (AWS CLI) 或 AWS Tools for Windows PowerShell 變更預設參數層。如需詳細資訊,請參閱 使用 AWS CLI 指定或變更 Parameter Store 預設方案 及 指定或變更Parameter Store預設層 (PowerShell)。
指定或變更 Parameter Store 預設層
開啟位於 https://console.aws.amazon.com/systems-manager/
的 AWS Systems Manager 主控台。 在導覽窗格中,選擇 Parameter Store。
-
選擇 Settings (設定) 標籤。
-
選擇 Change default tier (變更預設層)。
-
選擇下列其中一個選項。
-
標準
-
Advanced (進階)
-
Intelligent-Tiering
如需這些選項的資訊,請參閱 指定預設參數層。
-
-
檢閱訊息,然後選擇 Confirm (確認)。
若您稍後希望變更預設層設定,請重複此程序,並指定不同的預設層選項。
使用 AWS CLI 指定或變更 Parameter Store 預設方案
以下程序示範如何使用 AWS CLI 來變更目前 AWS 帳戶 和 AWS 區域 的預設參數層設定。
使用 AWS CLI 指定或變更 Parameter Store 預設層
-
開啟 AWS CLI 並執行以下命令,來變更 AWS 帳戶 帳戶中特定 AWS 區域 的預設參數層設定。
aws ssm update-service-setting --setting-id arn:aws:ssm:
region
:account-id
:servicesetting/ssm/parameter-store/default-parameter-tier --setting-valuetier-option
region
代表 AWS Systems Manager 支援之 AWS 區域 的識別符,例如us-east-2
代表美國東部 (俄亥俄) 區域。如需支援的region
值的清單,請參閱《Amazon Web Services 一般參考》中 Systems Manager 服務端點一節的區域資料欄。tier-option
值包含Standard
、Advanced
和Intelligent-Tiering
。如需這些選項的資訊,請參閱 指定預設參數層。如果命令成功,則無輸出訊息。
-
執行以下命令,檢視目前 AWS 帳戶 和 AWS 區域 中 Parameter Store 的目前預設參數層服務設定。
aws ssm get-service-setting --setting-id arn:aws:ssm:
region
:account-id
:servicesetting/ssm/parameter-store/default-parameter-tier系統會傳回與以下相似的資訊。
{ "ServiceSetting": { "SettingId": "/ssm/parameter-store/default-parameter-tier", "SettingValue": "Advanced", "LastModifiedDate": 1556551683.923, "LastModifiedUser": "arn:aws:sts::123456789012:assumed-role/Administrator/Jasper", "ARN": "arn:aws:ssm:us-east-2:123456789012:servicesetting/ssm/parameter-store/default-parameter-tier", "Status": "Customized" } }
若您希望再次變更預設層設定,請重複此程序,並指定不同的 SettingValue
選項。
指定或變更Parameter Store預設層 (PowerShell)
以下程序示範如何使用 Tools for Windows PowerShell 來變更 Amazon Web Services 帳戶中特定 AWS 區域 的預設參數層設定。
使用 PowerShell 指定或變更 Parameter Store 預設層
-
使用 AWS Tools for PowerShell (Tools for PowerShell),變更目前 AWS 帳戶 和 AWS 區域 中的 Parameter Store 預設層。
Update-SSMServiceSetting -SettingId "arn:aws:ssm:
region
:account-id
:servicesetting/ssm/parameter-store/default-parameter-tier" -SettingValue "tier-option
" -Regionregion
region
代表 AWS Systems Manager 支援之 AWS 區域 的識別符,例如us-east-2
代表美國東部 (俄亥俄) 區域。如需支援的region
值的清單,請參閱《Amazon Web Services 一般參考》中 Systems Manager 服務端點一節的區域資料欄。tier-option
值包含Standard
、Advanced
和Intelligent-Tiering
。如需這些選項的資訊,請參閱 指定預設參數層。如果命令成功,則無輸出訊息。
-
執行以下命令,檢視目前 AWS 帳戶 和 AWS 區域 中 Parameter Store 的目前預設參數層服務設定。
Get-SSMServiceSetting -SettingId "arn:aws:ssm:
region
:
:servicesetting/ssm/parameter-store/default-parameter-tier" -Regionaccount-id
region
region
代表 AWS Systems Manager 支援之 AWS 區域 的識別符,例如us-east-2
代表美國東部 (俄亥俄) 區域。如需支援的region
值的清單,請參閱《Amazon Web Services 一般參考》中 Systems Manager 服務端點一節的區域資料欄。系統會傳回與以下相似的資訊。
ARN : arn:aws:ssm:us-east-2:123456789012:servicesetting/ssm/parameter-store/default-parameter-tier LastModifiedDate : 4/29/2019 3:35:44 PM LastModifiedUser : arn:aws:sts::123456789012:assumed-role/Administrator/Jasper SettingId : /ssm/parameter-store/default-parameter-tier SettingValue : Advanced Status : Customized
若您希望再次變更預設層設定,請重複此程序,並指定不同的 SettingValue
選項。
將標準參數變更為進階參數
請使用下列步驟,將現有的標準參數變更為進階參數。如需有關如何建立新的進階參數的資訊,請參閱 在 Systems Manager 中建立 Parameter Store 參數。
若要將標準參數變更為進階參數
開啟位於 https://console.aws.amazon.com/systems-manager/
的 AWS Systems Manager 主控台。 在導覽窗格中,選擇 Parameter Store。
-
選擇參數,然後選擇 Edit (編輯)。
-
對於 Description (說明),請輸入有關此參數的資訊。
-
選擇 Advanced (進階)。
-
對於 Value (值),請輸入此參數的值。進階參數的最大值限制為 8 KB。
-
選擇 Save changes (儲存變更)。