Перейти к основному содержимому

Хранилище секретов AWS Secrets Manager

Static Badge

Semaphore UI Enterprise может использовать AWS Secrets Manager в качестве внешнего хранилища секретов хранилища ключей вместо базы данных.

Параметры настройки

При создании хранилища AWS Secrets Manager в разделе Хранилище ключей → Хранилища настройте следующее:

ПолеОписание
RegionРегион AWS, в котором находятся секреты (например, us-east-1). Обязательно.
Endpoint URLНеобязательный пользовательский эндпоинт. Оставьте пустым для стандартного эндпоинта AWS API. Полезно для LocalStack или VPC-эндпоинтов.
Use IAM Role / Instance ProfileЕсли включено, Semaphore использует цепочку учётных данных AWS из окружения (instance profile EC2, task role ECS, IRSA в EKS и т. д.) и не требует статических ключей доступа.
Access Key IDОбязательно, если режим IAM-роли выключен.
Secret Access KeyОбязательно, если режим IAM-роли выключен. Может храниться в базе данных, читаться из переменной окружения или загружаться из файла.

IAM-роль или ключи доступа

  • IAM-роль / instance profile (рекомендуется в AWS): включите Use IAM Role / Instance Profile и предоставьте хосту сервера или раннера Semaphore права на чтение секретов, на которые вы ссылаетесь. Долгоживущие ключи в Semaphore не хранятся.
  • Ключи доступа: оставьте флажок выключенным и укажите пару ключей доступа IAM-пользователя или роли с правом secretsmanager:GetSecretValue (и связанными правами list/describe для синхронизации).

При редактировании существующего хранилища Semaphore считает, что используется режим IAM-роли, если не был сохранён идентификатор ключа доступа.

Как использовать

  1. В вашем проекте откройте Хранилище ключей → Хранилища и создайте хранилище AWS Secrets Manager.
  2. При создании или редактировании ключа выберите это хранилище и укажите имя секрета или ARN в AWS Secrets Manager.
  3. При желании настройте пути синхронизации, чтобы автоматически импортировать секреты по расписанию.

Хранилище может работать в режиме «только чтение».

Синхронизация секретов

Секреты из AWS Secrets Manager можно импортировать в хранилище ключей и поддерживать в актуальном состоянии, как и в случае с другими внешними хранилищами. Разделитель пути по умолчанию — /. См. Синхронизация секретов из удалённых хранилищ.