与 AWS SDK或PutParameter一起使用 CLI - AWS SDK代码示例

AWS 文档 AWS SDK示例 GitHub 存储库中还有更多SDK示例

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

与 AWS SDK或PutParameter一起使用 CLI

以下代码示例演示如何使用 PutParameter

CLI
AWS CLI

示例 1:更改参数值

以下 put-parameter 示例更改了指定参数的值。

aws ssm put-parameter \ --name "MyStringParameter" \ --type "String" \ --value "Vici" \ --overwrite

输出:

{ "Version": 2, "Tier": "Standard" }

有关更多信息,请参阅《S ystems Manager 用户指南》中的创建 Systems Manager 参数 (AWS CLI)、“管理参数层 < l https://docs.aws.amazon.com/systems-manager/ atest/userguid parameter-store-advanced-parameters e/.html>`__” 和 “使用参数策略”。AWS

示例 2:创建高级参数

以下 put-parameter 示例将创建高级参数。

aws ssm put-parameter \ --name "MyAdvancedParameter" \ --description "This is an advanced parameter" \ --value "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat [truncated]" \ --type "String" \ --tier Advanced

输出:

{ "Version": 1, "Tier": "Advanced" }

有关更多信息,请参阅《S ystems Manager 用户指南》中的创建 Systems Manager 参数 (AWS CLI)、“管理参数层 < l https://docs.aws.amazon.com/systems-manager/ atest/userguid parameter-store-advanced-parameters e/.html>`__” 和 “使用参数策略”。AWS

示例 3:将标准参数转换为高级参数

以下 put-parameter 示例将现有标准参数转换为高级参数。

aws ssm put-parameter \ --name "MyConvertedParameter" \ --value "abc123" \ --type "String" \ --tier Advanced \ --overwrite

输出:

{ "Version": 2, "Tier": "Advanced" }

有关更多信息,请参阅《S ystems Manager 用户指南》中的创建 Systems Manager 参数 (AWS CLI)、“管理参数层 < l https://docs.aws.amazon.com/systems-manager/ atest/userguid parameter-store-advanced-parameters e/.html>`__” 和 “使用参数策略”。AWS

示例 4:创建附加有策略的参数

以下 put-parameter 示例创建了一个附加参数策略的高级参数。

aws ssm put-parameter \ --name "/Finance/Payroll/q2accesskey" \ --value "P@sSwW)rd" \ --type "SecureString" \ --tier Advanced \ --policies "[{\"Type\":\"Expiration\",\"Version\":\"1.0\",\"Attributes\":{\"Timestamp\":\"2020-06-30T00:00:00.000Z\"}},{\"Type\":\"ExpirationNotification\",\"Version\":\"1.0\",\"Attributes\":{\"Before\":\"5\",\"Unit\":\"Days\"}},{\"Type\":\"NoChangeNotification\",\"Version\":\"1.0\",\"Attributes\":{\"After\":\"60\",\"Unit\":\"Days\"}}]"

输出:

{ "Version": 1, "Tier": "Advanced" }

有关更多信息,请参阅《S ystems Manager 用户指南》中的创建 Systems Manager 参数 (AWS CLI)、“管理参数层 < l https://docs.aws.amazon.com/systems-manager/ atest/userguid parameter-store-advanced-parameters e/.html>`__” 和 “使用参数策略”。AWS

示例 5:向现有参数添加策略

以下 put-parameter 示例将策略附加到现有高级参数。

aws ssm put-parameter \ --name "/Finance/Payroll/q2accesskey" \ --value "N3wP@sSwW)rd" \ --type "SecureString" \ --tier Advanced \ --policies "[{\"Type\":\"Expiration\",\"Version\":\"1.0\",\"Attributes\":{\"Timestamp\":\"2020-06-30T00:00:00.000Z\"}},{\"Type\":\"ExpirationNotification\",\"Version\":\"1.0\",\"Attributes\":{\"Before\":\"5\",\"Unit\":\"Days\"}},{\"Type\":\"NoChangeNotification\",\"Version\":\"1.0\",\"Attributes\":{\"After\":\"60\",\"Unit\":\"Days\"}}]" --overwrite

输出:

{ "Version": 2, "Tier": "Advanced" }

有关更多信息,请参阅《S ystems Manager 用户指南》中的创建 Systems Manager 参数 (AWS CLI)、“管理参数层 < l https://docs.aws.amazon.com/systems-manager/ atest/userguid parameter-store-advanced-parameters e/.html>`__” 和 “使用参数策略”。AWS

Java
SDK适用于 Java 2.x
注意

还有更多相关信息 GitHub。查找完整示例,学习如何在 AWS 代码示例存储库中进行设置和运行。

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ssm.SsmClient; import software.amazon.awssdk.services.ssm.model.ParameterType; import software.amazon.awssdk.services.ssm.model.PutParameterRequest; import software.amazon.awssdk.services.ssm.model.SsmException; public class PutParameter { public static void main(String[] args) { final String usage = """ Usage: <paraName> Where: paraName - The name of the parameter. paraValue - The value of the parameter. """; if (args.length != 2) { System.out.println(usage); System.exit(1); } String paraName = args[0]; String paraValue = args[1]; Region region = Region.US_EAST_1; SsmClient ssmClient = SsmClient.builder() .region(region) .build(); putParaValue(ssmClient, paraName, paraValue); ssmClient.close(); } public static void putParaValue(SsmClient ssmClient, String paraName, String value) { try { PutParameterRequest parameterRequest = PutParameterRequest.builder() .name(paraName) .type(ParameterType.STRING) .value(value) .build(); ssmClient.putParameter(parameterRequest); System.out.println("The parameter was successfully added."); } catch (SsmException e) { System.err.println(e.getMessage()); System.exit(1); } } }
  • 有关API详细信息,请参阅 “AWS SDK for Java 2.x API参考 PutParameter” 中的。

PowerShell
用于 PowerShell

示例 1:此示例创建一个参数。如果此命令成功,则无任何输出。

Write-SSMParameter -Name "Welcome" -Type "String" -Value "helloWorld"

示例 2:此示例更改了参数。如果此命令成功,则无任何输出。

Write-SSMParameter -Name "Welcome" -Type "String" -Value "Good day, Sunshine!" -Overwrite $true
  • 有关API详细信息,请参阅 AWS Tools for PowerShell Cmdlet 参考PutParameter中的。

Rust
SDK对于 Rust
注意

还有更多相关信息 GitHub。查找完整示例,学习如何在 AWS 代码示例存储库中进行设置和运行。

async fn make_parameter( client: &Client, name: &str, value: &str, description: &str, ) -> Result<(), Error> { let resp = client .put_parameter() .overwrite(true) .r#type(ParameterType::String) .name(name) .value(value) .description(description) .send() .await?; println!("Success! Parameter now has version: {}", resp.version()); Ok(()) }
  • 有关API详细信息,请参见PutParameter中的 Rust AWS SDK API 参考