Es ist eine Funktion, auf die Sie gewartet haben. Klicken Sie hier, um Lambdas Artikel über Umgebungsvariablen zu lesen [https://aws.amazon.com/jp/blogs/aws/new-for-aws-lambda-environment-variables-and-serverless-application-model/] Dies macht den Codierungsteil wie den Unterschied zwischen der Entwicklungs- und der kommerziellen Einstellungsumgebung bequem. Persönlich halte ich es auch für nützlich, das Protokollausgabepegel-Flag für das Debuggen oder die Verbindungsinformationen nicht fest codieren zu müssen.
Es gibt keine Begrenzung für die Anzahl, insgesamt 4 KB Muss mit einem Alphabet und a-zA-z0-9_ beginnen, damit das Symbol nur "_" sein kann.
Es gibt auch einen reservierten Namen, sodass die folgenden Schlüsselnamen nicht verwendet werden können AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY AWS_SESSION_TOKEN AWS_ACCESS_KEY AWS_SECRET_KEY AWS_SECURITY_TOKEN AWS_DEFAULT_REGION AWS_REGION AWS_LAMBDA_LOG_GROUP_NAME AWS_LAMBDA_LOG_STREAM_NAME AWS_LAMBDA_FUNCTION_NAME AWS_LAMBDA_FUNCTION_MEMORY_SIZE AWS_LAMBDA_FUNCTION_VERSION LAMBDA_TASK_ROOT LAMBDA_RUNTIME_DIR
Die neuesten Informationen finden Sie unter Offiziell.
Mit KeyValue einstellen.
Über die GUI wird der Teil der Umgebungsvariablen unter dem Code-Editor hinzugefügt. Versuchen Sie vorerst, "env" für Key und "prd" für Value festzulegen.
Informationen zur Einrichtung von [hier] finden Sie in der CLI (http://docs.aws.amazon.com/ja_jp/lambda/latest/dg/env_variables.html).
Offensichtlich kann es als Umgebungsvariable verwendet werden. .. Probe in Python
just_print.py
import os
def lambda_handler(event, context):
# TODO implement
print '---all env value---'
for i in os.environ.items():
print i
print '---get target---'
print os.environ['env']
return
---all env value---
('AWS_LAMBDA_FUNCTION_VERSION', '$LATEST')
('LAMBDA_TASK_ROOT', '/var/task')
('PATH', '/usr/local/bin:/usr/bin/:/bin')
('LD_LIBRARY_PATH', '/lib64:/usr/lib64:/var/runtime:/var/runtime/lib:/var/task:/var/task/lib')
('LANG', 'en_US.UTF-8')
('AWS_LAMBDA_FUNCTION_NAME', 'Just_print_event')
('AWS_REGION', 'us-west-2')
('AWS_SESSION_TOKEN', 'xxxxx')
('AWS_SECURITY_TOKEN', 'xxxxxxx')
('LAMBDA_RUNTIME_DIR', '/var/runtime')
('AWS_LAMBDA_FUNCTION_MEMORY_SIZE', '128')
('env', 'prd')
('PYTHONPATH', '/var/runtime')
('AWS_LAMBDA_LOG_GROUP_NAME', '/aws/lambda/Just_print_event')
('AWS_LAMBDA_LOG_STREAM_NAME', '2016/11/19/[$LATEST]')
('AWS_ACCESS_KEY_ID', 'xxxxxxxxxxxxxxxxxxxxxxxxx')
('AWS_DEFAULT_REGION', 'us-west-2')
('AWS_SECRET_ACCESS_KEY', 'xxxxxxxxxxxxxxxxxxxxxx')
---get target---
prd
Es wird empfohlen, vertrauliche Informationen wie das Verbindungskennwort zur DB nicht im Klartext abzulegen. Betrachten wir die Verschlüsselungsverarbeitung mit KMS usw.!
Storing Sensitive Information
For sensitive information, such as database passwords, we recommend you use client-side encryption using AWS Key Management Service and store the resulting values as Ciphertext in your environment variable. You will need to include logic in your Lambda function code to decrypt these values.
Dieser Beitrag ist eine individuelle Meinung und bezieht sich nicht auf das Unternehmen oder die Organisation, zu der er gehört. Darüber hinaus übernehmen wir keine Garantie für den Betrieb des veröffentlichten Beispielprogramms. Verwenden Sie es daher nur als Referenz.
Recommended Posts