我将按照此答案中的说明生成以下S3桶策略:
{
"Id": "Policy1495981680273",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1495981517155",
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::surplace-audio",
"Principal": "*"
}
]
}
我返回以下错误:
操作不适用于语句中的任何资源
我的政策遗漏了什么?
错误操作不适用于语句中的任何资源
简单地说,这意味着操作(您在策略中编写的)不适用于资源。我试图公开我的桶,这样任何人都可以从我的桶下载。我得到的错误,直到我删除(s3: ListBucket)从我的语句。
{
"Id": "Policyxxxx961",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmtxxxxx4365",
"Action": [
"s3:GetObject",
"s3:ListBucket",
"s3:PutObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::bucket-name/*",
"Principal": "*"
}
]
}
因为list bucket不适用于bucket内部,所以删除此操作策略效果很好。
仅仅删除s3:ListBucket
权限对我来说并不是一个很好的解决方案,对很多其他人来说可能也不是。
如果你想要s3:ListBucket
权限,你只需要拥有bucket的普通arn(末尾没有/*
),因为该权限适用于bucket本身,而不是bucket中的项目。
如下所示,您必须将s3: ListBucket
权限作为与桶中的项相关的权限(如s3: GetObject
和s3: PutObject
)的单独语句:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket"
],
"Principal": {
"AWS": "[IAM ARN HERE]"
},
"Resource": "arn:aws:s3:::my-bucket-name"
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Principal": {
"AWS": "[IAM ARN HERE]"
},
"Resource": "arn:aws:s3:::my-bucket-name/*"
}
]
}
来自IAM docs,http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Action
有些服务不允许您为单个资源指定操作;相反,您在Action或NotAction元素中列出的任何操作都适用于该服务中的所有资源。在这些情况下,可以在资源元素中使用通配符*。
有了这些信息,资源的值应该如下所示:
"Resource": "arn:aws:s3:::surplace-audio/*"
我试图在wordpress中使用AMP与表单动作。我使用action-xhr与POST方法。 当我提交表单时,它会给出错误信息 响应必须包含AMP-访问-控制-允许-源-起源头 表单提交失败:错误:响应必须包含AMP-访问-控制-允许-源-源头 甚至尝试添加标题,如下所示 这个问题仍然存在。有什么建议吗? 我使用的是wordpress版本5.0.3
拖放操作不适用于selenium 3.8。 下面是该元素的JS代码 这就是我尝试过的。但这只是选择元素。保持和放弃是不会发生的。 我也试过这个。 也尝试过机器人。每次我只能看到源元素和目标元素都被选中。但不是被拖拽掉的。 还尝试了dragAndDrop ActionsChain。那也没用。
我在SQL Server 2014上使用Kafka Connect和Confluent MSSQL connector。我尝试了插入和更新操作,它们工作正常,将正确的记录推送到Kafka。如果我删除了一条记录,我会收到以下关于Kafka主题的消息: 相反,我希望删除记录的详细信息。 我使用以下命令启用CDC:
我正在尝试通过NIFI从oracle数据库中提取数据。在画布中,我将文件大小为0 KB的“GenerateFlowFile”处理器安排为每5分钟运行一次。这只是为了在成功时触发“executesql”处理器。对于“executeSQL”,我将DB连接池服务设置为DBCPConnectionPool。我输入SQL查询“select*FROM sometable”。我的DBCPConnectionPo
在安装了最新浏览器的情况下使用Selenium w/Java绑定和ChromeDriver 2.3 在花了足够多的时间试图找到一个解决方案后,我现在被难倒了。我正在尝试将一个元素拖放到另一个元素。唯一需要注意的是,我需要移动到的元素目标只有在移动源元素后才可见。有什么建议吗? 因此,这里是我点击并按住的源元素的屏幕截图,然后拖动它,我也可以删除两个选项: 元素是源 因此,当我按住鼠标并拖动一小部分
我发现Http 207可以用于批量插入/删除/。。。等等。从业务角度来看,我们可能会插入多个项目,并且部分成功。 我想知道如果我们有API Post调用一些外部服务,是否同样适用? 业务场景示例: 我们有正在创建订单的HttpPost终结点。 现在我们假设,除了创建订单之外,这个endpoint还将调用外部服务来打印该订单的标签,另一个endpoint将通过REST向外部第三方系统发送某种确认。