登录
首页 >  Golang >  Go问答

禁止在sns上使用带有通配符资源的ListTopics

来源:stackoverflow

时间:2024-02-19 08:33:23 379浏览 收藏

偷偷努力,悄无声息地变强,然后惊艳所有人!哈哈,小伙伴们又来学习啦~今天我将给大家介绍《禁止在sns上使用带有通配符资源的ListTopics》,这篇文章主要会讲到等等知识点,不知道大家对其都有多少了解,下面我们就一起来看一吧!当然,非常希望大家能多多评论,给出合理的建议,我们一起学习,一起进步!

问题内容

我的团队在sns上拥有一个拥有完全权限的帐户,只要我们根据某个前缀对资源进行操作

{
  "version": "2012-10-17",
  "statement": [
    {
      "effect": "allow",
      "action": [
          "sns:createtopic",
          // ...
          "sns:listtopics",
          // ...
      ],
      "resource": "arn:aws:sns:eu-west-1:{redacted}:team-prefix-*"
    },

我们可以很好地完成大多数操作,至少是我们最需要的操作,但是如果我们尝试列出主题,我们会收到禁止错误

SNS: ListTopics, AuthorizationError: User xxx is not authorized to perform: SNS:ListTopics on resource: arn:aws:sns:eu-west-1:{redacted}:*

我们正在使用新的 go sdk v2,并且找不到仅查询我们的主题的方法,是否有办法列出它们,或者我们是否需要列出所有帐户主题的权限?


解决方案


sns:listtopics 没有资源过滤器(https://docs.aws.amazon.com/sns/latest/api/API_ListTopics.html),它的全有或全无操作。
亚马逊文档除外:如果您在语句中指定的资源类型具有不支持该资源类型的操作,则该语句不允许访问。 link

通常,如果您希望能够列出,则 iam 文档应如下所示。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
          "sns:CreateTopic"
      ],
      "Resource": "arn:aws:sns:eu-west-1:{redacted}:team-prefix-*"
    },
    {
      "Effect": "Allow",
      "Action": [
          "sns:ListTopics",
      ],
      "Resource": "*"
    },
...

如果粒度级别的分离确实是一个大问题,则应使用单独的 aws 帐户。

好了,本文到此结束,带大家了解了《禁止在sns上使用带有通配符资源的ListTopics》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>