如果将对象放入不同帐户(“帐户B”)的“帐户A”所拥有的存储桶中,您将无法从“帐户A”(存储桶所有者)通过S3静态网站(http)访问文件。
无论在所有对象上授予GetObject的存储桶策略如何,也无论存储桶-所有者-完全控制
ACL是否在对象上启用,这都是正确的。
我有一个独特的设置,需要将文件从不拥有存储桶的帐户发布到S3存储桶。
上传操作工作正常。我的问题是,如果文件是从其他帐户发布的,我无法通过S3静态网站访问bucket所有者帐户中的文件(403禁止响应)。
只有当文件从不同的帐户被推送到S3时,问题才会存在。因为问题仅出在这些文件上,所以问题似乎出在对象所有权ACL配置上。我已经确认我可以通过S3静态网站endpoint访问bucket中的其他文件(不是由其他帐户上传的),因此我知道我的bucket策略和VPCendpoint配置是正确的。
如果我完全禁用对象ACL,它可以正常工作,但是由于两个问题,我无法做到这一点:
由于上述这些约束,我必须使用存储桶上启用的对象 ACL。我已经尝试了“对象编写器”和“存储桶拥有者首选”的设置,两者都不起作用。所有文件都使用存储桶拥有者完全控制
对象 ACL 上传。
如前所述,禁用ACL可以修复一切,但由于我的客户端工具(Anable和Aply)在没有ACL集的情况下无法上传到S3,因此ACL必须保持启用状态。(禁用ACL是S3的一项相对较新的功能,于2021年底添加)
>
Buckettest-buc-a
位于“帐户A”中,它不是“私有”存储桶,但不允许公共访问。访问是通过策略授予的(下面的片段)。
存储桶对象(文件)从“账户 B”角色推送到测试存储桶 a
。
我已验证ACL的外观正确,并且“帐户A”和“帐户B”都具有对象访问权限。(问题底部的截图)
我试图通过S3静态网站访问(通过http)从bucket-owner帐户(帐户A)访问文件。我可以访问不是由“帐户B”上传的文件,但是由“帐户B”上传的文件返回403禁止
以下是如何使用Ansible上传该文件的示例:
提醒:进行上传的角色不是bucket所有者帐户的一部分。
- name: "publish gpg pubkey to s3 from Account B"
aws_s3:
bucket: "test-bucket-a"
object: "/files/pubkey.gpg"
src: "/home/file/pubkey.gpg"
mode: "put"
permission: "bucket-owner-full-control"
我正在使用 VPC 终端节点进行访问,这已添加到存储桶策略中。所有需要的路由和endpoint配置都已就地。我知道我的策略配置是好的,因为如果我禁用对象ACL,一切都可以完美地工作。
{
"Sid": "AllowGetThroughVPCEndpoint",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::test-bucket-a/*",
"Condition": {
"StringEquals": {
"aws:sourceVpce": "vpce-0bfb94<scrubbed>"
}
}
},
一些关键故障排除注意事项:
这个问题一直是Ansible的错。
尽管在上传期间设置了< code >权限:“bucket-owner-full-control”,但该设置无法正常工作。我相信作为这个问题的副作用:https://github . com/ansi ble-collections/Amazon . AWS/issues/219
修复:
最后,我做了一个ansible-galaxy集合安装-升级amazon.aws,并尝试重新上传文件,一切都按预期进行。
本章将详细介绍百度统计分析云的账户权限系统。通过对账户权限的管理,您可以实现将自有的分析云站点授权给其他账户,并控制被授权账户可见/可操作的功能范围,数据范围及资源范围。 账户权限的相关概念 功能权限及配置 资源权限及配置 数据权限及配置
帐户是存储在区块链中的人类可读标识符。 每个交易都根据配置的帐户权限对其权限进行评估。 每个已命名的权限都有一个阈值,必须满足该权限下签署的交易才能被视为有效的阈值。 交易 通过使用已经安装和解锁钱包的客户端来签署。 钱包是保护和利用你的密钥的软件。 这些密 钥可能授权也可能不授权区块链上的账户权限。 钱包 钱包是一个存储可能与账户有关的密匙的客户端。通常情况下,钱包有锁定和解锁两种状态并通过 一
使用指南 - 账户管理 - 站点管理 - 什么是权限网站(如何看到其它账户的报告) 权限网站:如果您接受了其他账户某一站点的网站报告授权,该站点即成为了您的权限站点。 该站点的域名和权限来源账户会在“网站列表”的“权限网站列表”中展示。 其他账户在授权时会设置您可以查看报告的范围。 当您选中权限站点查看数据的时候,如果左侧菜单栏中的某些报告是不可点击的,则证明您没有查看改分析报表的权限。 如果您有
问题内容: 我正在尝试创建一个可以从Gallery应用程序获取图像并将其显示在imageButton上的简单应用程序。我正在运行Android 5.0.1的手机上使用API 21进行测试。不幸的是,无论我尝试什么,即使我指定了权限,我仍然会遇到安全错误。 我获取图像的代码是: 当我尝试从Dropbox选择图像时,该代码有效,但是当我从图库中选择图像时,我得到 我将READ_EXTERNAL_S
我使用GoogleAPI php客户端库访问网站管理员工具数据。当我想列出网站地图时,它出现了致命错误:未捕获的异常“Google\u Service\u exception”(403)用户没有足够的网站权限。另见:https://support.google.com/webmasters/answer/2451999.'我将服务帐户电子邮件地址添加为我网站的限制用户,但错误仍然存在。 最后我找到
我正在开发一个应用程序,它需要AndroidMarshmallow的位置权限。我遵循了实现它所需的所有步骤(函数调用)。当我运行应用程序时,它会弹出一个请求用户权限的框。当我选择是时,它会显示另一个弹出窗口,上面写着“检测到屏幕覆盖”,并将我带到显示应用程序列表的设置屏幕。在那里,我取消选中所有应用程序,然后按后退按钮返回我的应用程序。当调用回调时,我可以看到权限未被授予。它一直在发生。 为什么它