2016-04-05 17 views
1

私は独立系ソフトウェアベンダーのために働いています。アプリケーションの新しい亜種が導入されるたびに、AWSラムダ関数を作成するアプリケーションがあります。アプリケーションの各インスタンスについて、異なる構成で同じ機能が作成されます。AWSラムダ関数のカスタム設定をどのように指定しますか?

例えば、私たちのラムダ関数のうちの1つは何らかの処理をしてから、その結果をSQSキューに挿入します。すでにキューの資格情報にIAMロールを使用していますが、キューとリージョンの名前は顧客とAWSラムダ機能がどこに配置されているかに基づいています。

AWSラムダ関数はJavaで書かれています。

キュー名の設定はどこで指定できますか? ...地域?

注:地域を指定する必要はありません。私たちの意図は、関数が実行されている領域を動的に決定し、それを使用することです。

+0

APIゲートウェイ要求の「ホスト」ヘッダーから領域を解析することを検討しましたか? – fspinnenhirn

答えて

0

キュー構成を環境変数として指定し、ラムダ関数から読み取ることができます。 hereに詳細な説明があります。

以下のコードに従って環境変数から現在の領域を読み取ることができます。機密データがある場合

System.getenv("AWS_DEFAULT_REGION"); 

しかし、あなたは秘密を配布し、管理するためのKeywhizまたは同様のシステムを検討する必要があります。 Diogo Monicaは、2017年3月に、Why you shouldn't use ENV variables for secret dataに関する興味深い記事を書いています。

関連する問題