HashiCorpは最近、HashiCorp Vault AWS Lambda Extensionのパブリックプレビュー版を発表した。新しいサービスは、最近リリースされたAWS Lambda Extensions APIに基づいており、サーバーレスアプリケーションがLambda関数をVault対応にすることなく、HashiCorp Vaultからシークレットを安全に取得できるようになる。
拡張機能は、HashiCorp Vaultからシークレットを読み取り、AWS Lambda関数が開始する前にそれらをディスクに書き込む。そこではAWS IAMを使用して認証される。認証はLambda関数が実行しているのと同じIDに依存する。Runtime APIとExtensions APIは独立したエンドポイントであるため、新しいアプローチにより、外部セキュリティアプローチがLambda関数自体に対して透過的になる。
ソース: https://aws.amazon.com/blogs/compute/introducing-aws-lambda-extensions-in-preview
Vault AWS Lambda Extensionは、Vaultからさまざまなシークレットを取得し、HashiCorp Vaultから設定された宛先にJSON応答を書き込むことができる。これは、HashiCorp GitHubリポジトリから入手できる。これには、Lambda関数で参照されるAmazon ARNの例が含まれている。
「これにより、多くの人々の生活がはるかに楽になる」と、Sky Betting & GamingのシニアオートメーションエンジニアであるLucy Davinhart氏は予測している。DevSecOpsコンサルタントのAndrey Devyatkin氏は、新しいアプローチの主な利点について次のように説明している。
これはきちんとしています。Terraformを介してシークレットを読み取る前は、動的シークレットではうまく機能しなかった環境変数を介してシークレットを渡す必要がありました。延長でリースを更新し続けることができるのでしょうか。
関数呼び出しの前に構成設定とシークレットを取得することは一般的なユースケースである。しかし、Lambda拡張機能を他のシナリオで使用することができ、Lambda関数を外部の監視、可観測性、セキュリティ、ガバナンスツールと統合できる。AWSのサーバーレスディベロッパーアドボケートであるJulian Wood氏は、他の考えられるユースケースについて説明する。それは、関数呼び出し前、最中、後に診断情報のキャプチャすること、あるいはコードを変更せずにコードを自動的にインストルメント化することである。もう1つのオプションは、強化されたセキュリティエージェントを介して機能アクティビティを検出して警告することである。
Lambda Extensionを導入した最初のAWSパートナーの1つであるLumigoは、Lambda Extensionsが解決する問題について記事で説明している。
Lambda Extensionsは、Lambdaを監視・セキュリティツールと統合する新しい方法を提供します(...)これは重要な前進です。我々はサーバを伴うシステムに対して同じものを提供してきましたが、それを愛用してきたベンダーに対して、同種のオープンアクセスを提供できます。
HashiCorp Vault AWS Lambda拡張機能とAWS Lambda Extensionsの両方が現在プレビュー版である。