在 AWS 中为 docker 中托管的服务存储 SAML 元数据文件的位置
Where to store SAML metadata file for services hosted in docker in AWS
我们在 AWS Fargate 的 docker 中托管了一组服务。我们的要求之一是为用户支持 SAML2 SSO。因此,身份提供者为开发环境生成了 SAML 元数据。 SAML 库能够从该文件中读取所有设置,因此无需手动配置 SAML 身份验证。由于我们在 docker 图像中构建服务,并希望在多个环境中重复使用同一图像,因此图像中不能包含 SAML 元数据。
如何将此文件安全地存储在 AWS 中,以及如何根据要求或身份提供商请求轻松更改它?
我在这里看到了几个选项,但 none 是最优的:
- 将 SAML 元数据存储在 S3 存储桶中并使用 KMS 对其进行加密。由于 SAML 库仅与本地文件系统集成,我们需要在将元数据馈送到库之前添加一些 "proxy-file" reader
- 将 SAML 元数据文件拆分为多个变量(如 EntityId、登录 url、注销 url 等)并将它们作为加密变量存储在 AWS SSM Parameter Store 中。此解决方案使 devops(针对新环境)和开发人员(初始库配置)的配置变得复杂。此外,不可能在 运行 时间内更改配置模式。
我正在寻找可以将 SAML 元数据安全地存储在 AWS 中并且可以针对新环境(阶段、产品等)轻松更改而无需重建初始代码的解决方案。
看来你可以使用 AWS EFS(弹性文件系统)它可以跨多个实例共享并支持完整的块级文件系统。
EFS 在您的用户案例中的优势:
支持全块文件系统,无需编写代理文件reader
静态加密可用
EFS 由多个主机并发访问共享,因此适用于 fargate
对于生产环境和开发环境,您可以使用两个不同的 EFS 卷
有关详细信息,请转至以下 link
你问的问题很有趣,如果你需要进一步讨论,请告诉我我愿意讨论
我们在 AWS Fargate 的 docker 中托管了一组服务。我们的要求之一是为用户支持 SAML2 SSO。因此,身份提供者为开发环境生成了 SAML 元数据。 SAML 库能够从该文件中读取所有设置,因此无需手动配置 SAML 身份验证。由于我们在 docker 图像中构建服务,并希望在多个环境中重复使用同一图像,因此图像中不能包含 SAML 元数据。 如何将此文件安全地存储在 AWS 中,以及如何根据要求或身份提供商请求轻松更改它?
我在这里看到了几个选项,但 none 是最优的:
- 将 SAML 元数据存储在 S3 存储桶中并使用 KMS 对其进行加密。由于 SAML 库仅与本地文件系统集成,我们需要在将元数据馈送到库之前添加一些 "proxy-file" reader
- 将 SAML 元数据文件拆分为多个变量(如 EntityId、登录 url、注销 url 等)并将它们作为加密变量存储在 AWS SSM Parameter Store 中。此解决方案使 devops(针对新环境)和开发人员(初始库配置)的配置变得复杂。此外,不可能在 运行 时间内更改配置模式。
我正在寻找可以将 SAML 元数据安全地存储在 AWS 中并且可以针对新环境(阶段、产品等)轻松更改而无需重建初始代码的解决方案。
看来你可以使用 AWS EFS(弹性文件系统)它可以跨多个实例共享并支持完整的块级文件系统。
EFS 在您的用户案例中的优势:
支持全块文件系统,无需编写代理文件reader
静态加密可用
EFS 由多个主机并发访问共享,因此适用于 fargate
对于生产环境和开发环境,您可以使用两个不同的 EFS 卷
有关详细信息,请转至以下 link
你问的问题很有趣,如果你需要进一步讨论,请告诉我我愿意讨论