2017-12-21 14 views
1

AWSラムダ関数からGoogleサービスアカウントで安全に認証するにはどうすればよいですか?私はAWSラムダからいくつかのGoogle APIを呼びたいと思う。AWSラムダのGoogle OAuth

+0

Google OAuthのドキュメントとラムダドキュメントを使って、それらを統合する方法を理解しましたか? – Kannaiyan

+2

[ask] – Aron

+0

@ Kannaiyan私が何を意味するのかは、サービスアカウントをjsonファイルにしておく必要があるということです。私はvmに保存しておくことができ、GOOGLE_APPLICATION_CREDENTIALS env変数を使用して認証します。ラムダ関数私は何をすべきですか?..私は私のコードベースに私のキーを保持することはできません –

答えて

0

ラムダ環境変数で暗号化された資格情報も保存できます。あなたはプログラムでawsコンソールにそれを保存するか設定することができます。

詳細:

http://docs.aws.amazon.com/lambda/latest/dg/env_variables.html

CLI:

aws lambda create-function \ 
    --region us-east-1 
    --function-name myTestFunction 
    --zip-file fileb://path/package.zip 
    --role role-arn 
    --environment Variables="{LD_LIBRARY_PATH=/usr/bin/test/lib64}" 
    --handler index.handler 
    --runtime nodejs6.10 
    --profile default 

Nodejs:

http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Lambda.html

変数のチェック:{下記のコードで

暗号化するには、KMSKeyArnをオンにし、KMSのArn値を入力します。

var params = { 
    FunctionName: 'STRING_VALUE', /* required */ 
    DeadLetterConfig: { 
    TargetArn: 'STRING_VALUE' 
    }, 
    Description: 'STRING_VALUE', 
    Environment: { 
    Variables: { 
     '<EnvironmentVariableName>': 'STRING_VALUE', 
     /* '<EnvironmentVariableName>': ... */ 
    } 
    }, 
    Handler: 'STRING_VALUE', 
    KMSKeyArn: 'STRING_VALUE', 
    MemorySize: 0, 
    Role: 'STRING_VALUE', 
    Runtime: nodejs | nodejs4.3 | nodejs6.10 | java8 | python2.7 | python3.6 | dotnetcore1.0 | nodejs4.3-edge, 
    Timeout: 0, 
    TracingConfig: { 
    Mode: Active | PassThrough 
    }, 
    VpcConfig: { 
    SecurityGroupIds: [ 
     'STRING_VALUE', 
     /* more items */ 
    ], 
    SubnetIds: [ 
     'STRING_VALUE', 
     /* more items */ 
    ] 
    } 
}; 
lambda.updateFunctionConfiguration(params, function(err, data) { 
    if (err) console.log(err, err.stack); // an error occurred 
    else  console.log(data);   // successful response 
}); 

希望します。