У нас есть набор служб, размещенных в докере в AWS Fargate.Одним из наших требований является поддержка единого входа SAML2 для пользователя.Таким образом, провайдер идентификации генерировал метаданные SAML для dev env.Библиотеки SAML могут считывать все параметры из этого файла, поэтому нет необходимости настраивать проверку подлинности SAML вручную.Поскольку мы создаем сервисы в образах докеров и хотели бы повторно использовать одно и то же изображение в нескольких средах, метаданные SAML не могут быть включены в образ.Как безопасно хранить этот файл в AWS и как легко изменить его в соответствии с требованиями или запросами поставщика удостоверений?
Здесь я вижу несколько вариантов, но ни один из них не является оптимальным:
- Храните метаданные SAML в корзине S3 и шифруйте их с помощью KMS.Поскольку библиотеки SAML имеют интеграцию только с локальной файловой системой, нам необходимо добавить некоторое средство чтения «прокси-файлов» перед метаданными канала в библиотеку
- Разделить файл метаданных SAML на несколько переменных (таких как EntityId, URL-адрес входа в систему, выход из системыurl и т. д.) и сохраните их как зашифрованные переменные в хранилище параметров AWS SSM.Это решение усложняет настройку как для devops (для новой среды), так и для разработчика (начальная конфигурация библиотеки).Кроме того, будет невозможно изменить схему конфигурации во время выполнения.
Я ищу решение, в котором метаданные SAML можно безопасно хранить в AWS и легко изменять для новых сред (stage, prodи т. д.) без необходимости перестраивать исходный код.