Рубрики
Uncategorized

Как хранить частные ключи надежно в AWS S3 для использования с эластичным фасонным

Частные ключи, которые вы используете в проекте, не должны быть скомпрометированы с исходным кодом. Лучший о … Теги с AWS, S3, эластичным платежом, дежоптом.

Частные ключи, которые вы используете в проекте, не должны быть скомпрометированы с исходным кодом. Лучший вариант состоит в том, чтобы настроить эластичный Geanstalk для загрузки файла из AWS S3 во время развертывания приложения.

В следующем примере показан эластичный Beanstalk Файл конфигурации Получение закрытого ключа файл из ведра S3.

# .ebextensions/serverkey.config
Resources:
  AWSEBAutoScalingGroup:
    Metadata:
      AWS::CloudFormation::Authentication:
        S3Auth:
          type: "s3"
          buckets: ["elasticbeanstalk-region-account-id"]
          roleName: 
            "Fn::GetOptionSetting": 
              Namespace: "aws:autoscaling:launchconfiguration"
              OptionName: "IamInstanceProfile"
              DefaultValue: "aws-elasticbeanstalk-ec2-role"
files:
  # Private key
  "/etc/pki/tls/certs/server.key":
    mode: "000400"
    owner: webapp
    group: webapp
    authentication: "S3Auth"
    source: https://s3.amazonaws.com/elasticbeanstalk-region-account-id/server.key

Профиль экземпляра «AWS-ELASICBEALSTALL-EC2-роль» должен иметь разрешение на чтение объекта ключа из указанного ведра. Смотри здесь чтобы увидеть, как это сделать.

Вы сделали URL с помощью переменной среды, как это:

source: { "Fn::Join" : ["", ["https://s3.amazonaws.com/elasticbeanstalk-region-account-id/", {"Fn::GetOptionSetting": {"Namespace": "aws:elasticbeanstalk:application:environment", "OptionName": "APP_ENV"}}, ".key"]]}

Надеюсь, у тебя хороший день!

Оригинал: «https://dev.to/eesnaola/how-to-store-private-keys-securely-in-aws-s3-for-use-with-elastic-beanstack-22lc»