2013-11-02 5 views
3

Я хочу добавить переменную среды с новыми символами в мое приложение, используя ElasticBeanstalk, например закрытый ключ RSA. Для этой цели я имею следующую форму: enter image description hereAmazon ElasticBeanstalk: настраивать переменную среды с символами новой строки

и AWS CLI.

+0

Что происходит, если вы добавляете эту переменную окружения? – kukido

+0

@AndreyMyatlyuk Приложение перезапускается. Я решил это, предоставив путь в переменной среды в файл с символами новой строки. –

ответ

2

Я не хочу, чтобы добавить ключевой файл в мои сборки, так как мы строим из мерзавца, и ключи в системе управления версиями могут представлять опасность для безопасности, поэтому я использовал этот обходной путь вместо:

# From your shell: Base64 encode the RSA private key file 
# -w 0 disables wrapping, we don't want new lines 
base64 -w 0 id_rsa 

Base64 закодированные данные не имеют новых строк, поэтому вы можете напрямую использовать вывод в качестве переменной среды ElasticBeanstalk. Затем вы можете использовать эту переменную внутри приложения следующим образом:

# From the shell 
echo "$SSH_PRIVATE_KEY" | base64 --decode - > .ssh/id_rsa 
# Or just decode it with some other programming language of your choice 

Таким образом, вы не должны включать файл, который вы ссылающийся в сборку, но может содержать ключ полностью в среде переменная.

+0

Как вы получили Elastic Beanstalk, чтобы добавить '$ SSH_PRIVATE_KEY'? Это слишком долго, поэтому я получаю «Сервис: AmazonCloudFormation, Message: Ошибка формата шаблона: Значение параметра« EnvironmentVariables »по умолчанию ...' – GreenRaccoon23

Смежные вопросы