我知道我可以通过使用" aws:SourceIp"来限制对我的s3资源的读取权限。在桶策略中。但是,由于我为多个客户提供服务,我最终得到了一份IP地址列表。由于没有办法在桶策略json中添加注释,我觉得这是没有文档的,并且在客户端更改时很难为其他人维护。 是否有更优雅和自我解释的方式来维持这个? 我的第一个想法是创建一个与客户端的DNS区域并使用策略中的名称。这样的事情是可行的还是最佳实践?
答案 0 :(得分:0)
如果您有多个客户端并且您可以识别它们,那么最好的做法是使用(预)签名的URL。
这意味着您可以拥有一个单独的服务(web,lambda,api,等等),它基于客户端身份验证和授权将返回一个已签名的客户端临时URL
你是对的,政策并不是维护和记录复杂或动态元素的真正可行的地方。
虽然如果你想坚持使用纯s3和策略,你可以使用Cloudformation部署/更新策略,使用yaml你可以评论或参数化几乎任何值