Цель: Разрешить публичный доступ на чтение для всех объектов в S3 корзине только используя VPN подключение, для подключения с мира объекты должны быть не публичными. В качестве сервиса VPN используется OpenVPN, который может быть развернут где угодно, поэтому разрешающие правило будем строить на проверки IP адреса.   Для начала нужно узнать список сетей, которые относятся … 
Продолжить читать "AWS — S3: Разрешить публичный доступ к объектам через VPN"            
                Для параметризованной сборки, понадобится плагин Active Choices Переходим в настройки Jenkins'а   Раздел "Управление плагинами"   Переходим к вкладке "Доступные" и в поиске указываем "Active Choices" Устанавливаем его.   Создаем "New Item" — "Pipeline", указываем, что это будет параметризованная сборка, и добавляем параметр "Active Choices Parameter"       Указываем, что это "Groovy Script" и … 
Продолжить читать "Jenkins — Active Choice: S3 — Вернуть нужное значение ключа с JSON файла"            
                Данный скрипт получает список всех директорий в корзине и удаляет все объекты в каждой директории, кроме последних "N" указанных. Для запуска скрипта нужно передать два аргумента: Имя корзины Количество последних хранимых объектов Пример запуска:   main.py:            
        
	
	            
                In order to allow read access from the S3 Bucket for all members included in the organization, the following policy must be applied to the S3 Bucket:   Where "stackset-lambdas" is the S3 Bucket name and "o-xxxxxxxxxx" is your Organization ID.            
        
	
	            
                Ресайз изображения на лету используя: Gateway API Lambda CloudFront S3 Bucket При этом в S3 Bucket будет только оригинал изображения.     Описание работы и CloudFormation template можно найти тут. Скачиваем CloudFormation template с сайта или же по этой ссылке.     Заходим в консоль AWS В сервисах находим "CloudFormation" — "Create stack" Задаем имя … 
Продолжить читать "AWS — ресайз изображений на лету"            
                  Пример сборки статического сайта на node.js, деплой артефактов в S3 Bucket и инвалидация кеша в CloudFront'е.   Переменные: AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY указаны в переменных CircleCI, в целях безопасности.   IAM Policy для инвалидации кеша можно посмотреть тут.            
        
	
	            
                Пример CloudFormation для передачи во внутрь EC2 инстанса "ACCESS_KEY" и "SECRET_KEY" прямо из IAM для доступа к S3 Bucket используя AWS-Cli.            
        
	
	            
                Создаем S3 Bucket, делаем его не публичным, в правах доступа ничего не меняем. Сразу найдем ARN созданного бакета. Создаем пользователя, на вкладке "Permisson" переходим в "Attach existing policies directly" и находим "AmazonS3ReadOnlyAccess". Посмотрим ARN созданного пользователя. Возвращаемся в настройки S3 Bucket уже созданного и переходим в "Permisson", создаем "Bucket Policy" со следующим содержимым: Не забываем … 
Продолжить читать "AWS — S3 Bucket только для чтения"            
                Скрипт находит в заданной директории все папки, и поочередно их архивирует, копирует на S3 Bucket и удаляет локально. Также получает список всех MySQL баз, исключая системные, поочередно их архивирует, отправляет на S3 Bucket и удаляет локально.