翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
aws-ラムダ-セクレツマネージャ
すべてのクラスは積極的に開発されており、将来のバージョンでは下位互換性がない変更または削除の対象となります。これらは、セマンティックバージョニング
注意: 正しく機能するためには、プロジェクト内の AWS ソリューション構築パッケージと AWS CDK パッケージが同じバージョンである必要があります。
| 言語 | パッケージ |
|---|---|
|
aws_solutions_constructs.aws_lambda_secretsmanager
|
|
@aws-solutions-constructs/aws-lambda-secretsmanager
|
|
software.amazon.awsconstructs.services.lambdasecretsmanager
|
Overview
この AWS ソリューション構築は、AWS Lambda 関数と AWS Secrets Manager のシークレットを、最も権限の低いアクセス権限で実装します。
TypeScript の最小限のデプロイ可能なパターン定義は次のとおりです。
const { LambdaToSecretsmanagerProps, LambdaToSecretsmanager } from '@aws-solutions-constructs/aws-lambda-secretsmanager'; const props: LambdaToSecretsmanagerProps = { lambdaFunctionProps: { runtime: lambda.Runtime.NODEJS_14_X, // This assumes a handler function in lib/lambda/index.js code: lambda.Code.fromAsset(`${__dirname}/lambda`), handler: 'index.handler' }, }; new LambdaToSecretsmanager(this, 'test-lambda-secretsmanager-stack', props);
Initializer
new LambdaToSecretsmanager(scope: Construct, id: string, props: LambdaToSecretsmanagerProps);
パラメータ
-
scope
Construct -
id
string
パターン構成プロパティ
| 名前 | タイプ | 説明 |
|---|---|---|
| ExistingLambdaObj? |
lambda.Function
|
Lambda Functionオブジェクトの既存のインスタンス。これとlambdaFunctionPropsはエラーを発生させます。 |
| LambdaFunctionProps? |
lambda.FunctionProps
|
Lambda 関数のデフォルトの小道具をオーバーライドするためにユーザーが提供した小道具です。 |
| SecretProps? |
secretsmanager.SecretProps
|
オプションのユーザーが提供する小道具で、Secrets Manager のデフォルトの小道具を上書きします。 |
| ExistingSecretObj? |
secretsmanager.Secret
|
シークレットマネージャーのシークレットオブジェクトの既存のインスタンス、これが設定されている場合secretPropsは無視されます。 |
| GrantWriteAccessかな |
boolean
|
Lambda 関数のシークレットへのオプションの書き込みアクセス (デフォルトでは読み取り専用)。 |
| SecretEnvironmentVariableName? |
string
|
Lambda 関数に設定されたSecrets Manager のシークレット環境変数の省略可能な名前。 |
| 既存のVPCかな? |
ec2.IVpc
|
このパターンをデプロイするオプションの既存の VPC。VPC にデプロイされると、Lambda 関数は VPC 内の ENI を使用してネットワークリソースにアクセスし、インターフェイスエンドポイントは AWS Secrets Manager 用 VPC 内に作成されます。既存の VPC が提供されている場合、deployVpcプロパティは、true。これはec2.IVpcを使用して、クライアントがスタックの外部に存在する VPC を提供できるようにします。ec2.Vpc.fromLookup()メソッド。 |
| vPCProps? |
ec2.VpcProps
|
新しい VPC のデフォルトプロパティを上書きするオプションのユーザー指定のプロパティ。enableDnsHostnames,enableDnsSupport,natGateways, およびsubnetConfigurationはパターンによって設定されるため、ここで指定されたプロパティの値はすべて上書きされます。もしdeployVpcではありませんtrueの場合、このプロパティは無視されます。 |
| DeployVPC? |
boolean
|
に基づいて新しい VPC を作成するかどうかvpcPropsこのパターンを展開します。これをに設定するtrueは、パターンを実行するために、最小限のほとんどのプライベート VPC をデプロイします。
true、次にexistingVpcは指定できません。デフォルトは false です。 |
パターンプロパティ
| 名前 | タイプ | 説明 |
|---|---|---|
| LambdaFunction |
lambda.Function
|
のインスタンスを返すlambda.Function構成によって作成されます。 |
| シークレット |
secretsmanager.Secret
|
のインスタンスを返すsecretsmanager.Secret構成によって作成されます。 |
| vpcかな |
ec2.IVpc
|
パターンによって使用される VPC 上のインターフェイスを返します(存在する場合)。これは、パターンによって作成された VPC、またはパターンコンストラクタに提供された VPC です。 |
デフォルト設定
オーバーライドなしでこのパターンをすぐに実装すると、次のデフォルトが設定されます。
AWS Lambda 関数
-
Lambda 関数の制限付き特権アクセス IAM ロールを設定します。
-
NodeJS Lambda 関数のキープアライブで接続を再利用できるようにします。
-
X-Ray トレースを有効にします。
-
環境変数の設定:
-
(デフォルト) CDK が返すシークレットの ARN を含む SECRET_ARNSecretArnプロパティ
-
AWS_NODEJS_CONNECTION_REUSE_ENABLED(ノード10.x以上の機能の場合)
-
Amazon Secrets Manager のシークレット
-
関連付けられた AWS Lambda 関数の読み取り専用アクセスを有効にする
-
アカウントとリージョンのデフォルトの KMS キーを使用してサーバー側の暗号化を有効にする
-
新しいシークレットを作成します。
-
(デフォルト) ランダムな名前
-
(デフォルト) ランダム値
-
-
CloudFormation スタックを削除するときにシークレットを保持する
Architecture
GitHub
| このパターンのコードを表示するには、問題を作成/表示し、プル要求などを行います。 | |
|---|---|
|
@aws-solutions-構築/aws-lambda-secretsmanager |