AWS SDK を使用して Secrets Manager を作成する - AWS SDK コードサンプル

Doc AWS SDK Examples リポジトリには、他にも SDK の例があります。 AWS GitHub

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SDK を使用して Secrets Manager を作成する

次のコード例は、Secrets Manager シークレットを作成する方法を示します。

C++
SDK for C++
注記

については、こちらを参照してください GitHub。用例一覧を検索し、AWS コードサンプルリポジトリでの設定と実行の方法を確認してください。

int main(int argc, const char *argv[]) { if (argc != 3) { std::cout << "Usage:\n" << " <secretName> <secretValue> \n\n" << "Where:\n" << " secretName - The name of the secret (for example, tutorials/MyFirstSecret). \n" << " secretValue - The secret value. " << std::endl; return 0; } SDKOptions options; options.loggingOptions.logLevel = Utils::Logging::LogLevel::Debug; InitAPI(options); { Aws::Client::ClientConfiguration config; //TODO(user): Enter the Region where you want to create the secret. String region = "us-east-1"; if (!region.empty()) { config.region = region; } SecretsManager::SecretsManagerClient sm_client(config); String secretName = argv[1]; String secretString = argv[2]; SecretsManager::Model::CreateSecretRequest request; request.SetName(secretName); request.SetSecretString(secretString); auto createSecretOutcome = sm_client.CreateSecret(request); if(createSecretOutcome.IsSuccess()){ std::cout << "Create secret with name: " << createSecretOutcome.GetResult().GetName() << std::endl; }else{ std::cout << "Failed with Error: " << createSecretOutcome.GetError() << std::endl; } } ShutdownAPI(options); return 0; }
  • API の詳細については、「 API リファレンスCreateSecret」の「」を参照してください。 AWS SDK for C++

CLI
AWS CLI

例 1: シークレットを作成するには

次に、2 つのキーと値のペアを持つシークレットを作成する、create-secret の例をします。

aws secretsmanager create-secret \ --name MyTestSecret \ --description "My test secret created with the CLI." \ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"

出力:

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE" }

詳細については、「Secrets Manager ユーザーガイド」の「シークレットの作成」を参照してください。

例 2: JSON ファイルの認証情報からシークレットを作成するには

次の create-secret の例は、ファイル内の認証情報からシークレットを作成します。詳細については、「AWS CLI ユーザーガイド」の「ファイルから AWS CLI パラメータをロードする」を参照してください。

aws secretsmanager create-secret \ --name MyTestSecret \ --secret-string file://mycreds.json

mycreds.json の内容:

{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }

出力:

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

詳細については、「Secrets Manager ユーザーガイド」の「シークレットの作成」を参照してください。

  • API の詳細については、「 コマンドリファレンスCreateSecret」の「」を参照してください。 AWS CLI

Java
SDK for Java 2.x
注記

については、こちらを参照してください GitHub。用例一覧を検索し、AWS コードサンプルリポジトリでの設定と実行の方法を確認してください。

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.secretsmanager.SecretsManagerClient; import software.amazon.awssdk.services.secretsmanager.model.CreateSecretRequest; import software.amazon.awssdk.services.secretsmanager.model.CreateSecretResponse; import software.amazon.awssdk.services.secretsmanager.model.SecretsManagerException; /** * Before running this Java V2 code example, set up your development * environment, including your credentials. * * For more information, see the following documentation topic: * * https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html */ public class CreateSecret { public static void main(String[] args) { final String usage = """ Usage: <secretName> <secretValue>\s Where: secretName - The name of the secret (for example, tutorials/MyFirstSecret).\s secretValue - The secret value.\s """; if (args.length != 2) { System.out.println(usage); System.exit(1); } String secretName = args[0]; String secretValue = args[1]; Region region = Region.US_EAST_1; SecretsManagerClient secretsClient = SecretsManagerClient.builder() .region(region) .build(); String secretARN = createNewSecret(secretsClient, secretName, secretValue); System.out.println("The secret ARN is " + secretARN); secretsClient.close(); } public static String createNewSecret(SecretsManagerClient secretsClient, String secretName, String secretValue) { try { CreateSecretRequest secretRequest = CreateSecretRequest.builder() .name(secretName) .description("This secret was created by the AWS Secret Manager Java API") .secretString(secretValue) .build(); CreateSecretResponse secretResponse = secretsClient.createSecret(secretRequest); return secretResponse.arn(); } catch (SecretsManagerException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; } }
  • API の詳細については、「 API リファレンスCreateSecret」の「」を参照してください。 AWS SDK for Java 2.x

Kotlin
SDK for Kotlin
注記

については、こちらを参照してください GitHub。用例一覧を検索し、AWS コードサンプルリポジトリでの設定と実行の方法を確認してください。

suspend fun createNewSecret(secretName: String?, secretValue: String?): String? { val request = CreateSecretRequest { name = secretName description = "This secret was created by the AWS Secrets Manager Kotlin API" secretString = secretValue } SecretsManagerClient { region = "us-east-1" }.use { secretsClient -> val response = secretsClient.createSecret(request) return response.arn } }
  • API の詳細については、CreateSecretAWS「 SDK for Kotlin API リファレンス」の「」を参照してください。

Rust
SDK for Rust
注記

については、こちらを参照してください GitHub。用例一覧を検索し、AWS コードサンプルリポジトリでの設定と実行の方法を確認してください。

async fn make_secret(client: &Client, name: &str, value: &str) -> Result<(), Error> { client .create_secret() .name(name) .secret_string(value) .send() .await?; println!("Created secret"); Ok(()) }
  • API の詳細については、CreateSecretAWS「 SDK for Rust API リファレンス」の「」を参照してください。