Где правильно хранить учетные данные AWS для приложения Next.js, развернутого на Zeit - PullRequest
0 голосов
/ 08 января 2019

У меня есть приложение Next.js, которое развернуто в Zeit. Я хочу получить доступ к некоторым службам AWS: SNS для отправки текстовых сообщений и DynamoDB для хранения некоторых данных.

Для JavaScript доступно aws-sdk , поэтому использовать любой сервис из AWS

довольно просто.

Пример функции для отправки текстовых сообщений

import SNS from 'aws-sdk/clients/sns';

export function sendTextMessage(message, phone) {
  return new Promise((resolve, reject) => {
    const snsParams = {
      Message: message,
      PhoneNumber: phone
    };

    const snsClient = new SNS({ region: 'us-east-1' });

    snsClient.publish(snsParams, (error, data) => {
      if (error) {
        reject(error);
      } else {
        resolve(data);
      }
    });
  });
}

Вопрос в том, где / как я могу безопасно хранить AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY на хостинге Zeit? Таким образом, он не доступен конечным пользователям.

Любая помощь приветствуется! Спасибо

1 Ответ

0 голосов
/ 31 января 2019

Вы можете использовать AWS Secrets Manager для безопасного хранения и получения ключей AWS.

https://aws.amazon.com/secrets-manager/

...