Недавно я готовился к специальному экзамену по безопасности, и у меня возник вопрос: выбрать между использованием хранилища параметров для хранения секретного URL-адреса подключения к базе данных, который может содержать пароли, или использования зашифрованных переменных среды KMS в лямбда-выражении.
Переменные среды IMO предпочтительнее, потому что в противном случае для лямбда-функций, которые вызываются много тысяч или сотен тысяч раз в день, это может начать стоить значительных затрат или даже может привести к превышению лимитов учетной записи.
Кроме того, добавляется задержка для выборки параметра при каждом вызове, которая может быть незначительной, но, тем не менее, складывается. В общем, мне бы хотелось, чтобы для переменных среды Lambda был реализован эталонный синтаксис для разрешения значений параметров AWS SSM, аналогичный тому, что сейчас реализовано для Cloudformation как для SSM, так и для диспетчера секретов.
Но до тех пор, почему SSM предпочтительнее использования переменных среды с шифрованием KMS, учитывая повышенную стоимость и задержку? (Это то, что я видел рекомендованными на практических экзаменах)