Glance S3 驱动的 HTTP 代理支持¶
https://blueprints.launchpad.net/glance/+spec/http-proxy-support-for-s3
目前 S3 存储不允许操作员通过代理连接到 S3 后端。这可能会限制从不同网络安全地连接到 S3 后端的能力。我建议添加使用代理连接到 S3 后端的选项。
问题描述¶
如果 Glance 存储配置为使用 S3 后端,并且后端位于私有网络之后,需要远程访问,则没有安全的方式可以安全地访问 S3 后端。
提议的变更¶
Boto,用于与 S3 后端建立连接的库,已经支持代理配置。我建议我们启用连接以接受额外的配置选项,以便用户可以选择通过代理连接。
将添加以下配置
s3_store_enable_proxy: 启用代理的使用
s3_store_proxy_host: 代理服务器(启用代理时必需)
s3_store_proxy_port: 连接到代理的端口
s3_store_proxy_user: 代理连接的用户名。
s3_store_proxy_password: 用于通过代理连接的密码。
备选方案¶
用户可以使用系统范围的代理参数,但这会限制从外部网络连接的能力。
数据模型影响¶
无
REST API 影响¶
无
安全影响¶
这将引入由用户修改的安全设置。通过代理连接的能力将提供一种很好的方式来保护连接。
通知影响¶
无
其他最终用户影响¶
这将在存储配置中引入代理配置选项。
性能影响¶
无
其他部署者影响¶
此更改必须在存储选项中显式配置。
开发人员影响¶
无
实现¶
负责人¶
- 主要负责人
cpallares
评审人员¶
- 核心评审人
flaper87 sigmavirus24
- 其他审核员
rosmaita
工作项¶
添加配置(代理名称、端口、用户、密码、默认重试次数到 S3 等)。
修改对 S3 的连接,以便可以选择接受代理参数。
为使用代理连接到 S3 后端的连接创建额外的单元测试。
依赖项¶
无
测试¶
需要单元测试来测试代理连接。
文档影响¶
需要更新 S3 存储的文档,以包含代理选项。