API метаданных AWS IAM? - PullRequest
       26

API метаданных AWS IAM?

0 голосов
/ 07 мая 2018

Я смотрю, есть ли официальный API для получения метаданных для информации, связанной с разрешениями IAM, службами и т. Д.

В консоли симулятора политики есть почти все, что мне нужно. Если посмотреть на сделанные HTTP-запросы, то есть запросы, которые возвращают, как выглядит, четко определенный объект JSON.

Например, чтобы получить все доступные сервисы, он вызывает:

https://policysim.aws.amazon.com/home/data/resource

и возвращает (сокращенно для краткости):

[
  {
    "name": "Amazon EC2",
    "actionPrefix": "ec2",
    "hasResource": true,
    "arnFormat": "arn:aws:ec2:<region>:<account>:<resourceType>/<resourcePath>"
  },
  {
    "name": "Amazon Sumerian",
    "actionPrefix": "sumerian",
    "hasResource": false,
    "arnFormat": "arn:aws:sumerian:<region>:<account-id>:<resource-type>/<resource_name>"
  },
  {
    "name": "Amazon Comprehend",
    "actionPrefix": "comprehend",
    "hasResource": false,
    "arnFormat": "arn:${Partition}:comprehend:${Region}:${AccountId}:${ResourceType}/${ResourceName}"
  },

 ...

  {
    "name": "AWS Elemental MediaStore",
    "actionPrefix": "mediastore",
    "hasResource": true,
    "arnFormat": "arn:aws:mediastore:<Region>:<Account>:<Resource>"
  }
]

А затем, например, API-шлюз, вызывающий

https://policysim.aws.amazon.com/home/data/action?serviceName=Amazon+API+Gateway&servicePrefix=execute-api

возвращается:

[
  {
    "name": "InvalidateCache",
    "evaluated": false,
    "allowed": false,
    "prefix": "execute-api",
    "service": "Amazon API Gateway",
    "serviceAware": true,
    "resourceEnabled": true,
    "deniedByOrganization": false,
    "requiredResourceNames": [
      "execute-api-general"
    ],
    "supportedResources": [
      {
        "Name": "execute-api-general",
        "ARN": "arn:aws:execute-api:${Region}:${Account}:${ApiId}/${Stage}/${Method}/${ApiSpecificResourcePath}",
        "RegEx": "^arn:aws:execute-api:.+",
        "isRequired": true
      }
    ],
    "scenarios": [],
    "contextKeys": []
  },
  {
    "name": "Invoke",
    "evaluated": false,
    "allowed": false,
    "prefix": "execute-api",
    "service": "Amazon API Gateway",
    "serviceAware": true,
    "resourceEnabled": true,
    "deniedByOrganization": false,
    "requiredResourceNames": [
      "execute-api-general"
    ],
    "supportedResources": [
      {
        "Name": "execute-api-general",
        "ARN": "arn:aws:execute-api:${Region}:${Account}:${ApiId}/${Stage}/${Method}/${ApiSpecificResourcePath}",
        "RegEx": "^arn:aws:execute-api:.+",
        "isRequired": true
      }
    ],
    "scenarios": [],
    "contextKeys": []
  }
]

Это вся информация, которую я ищу. Список имени службы, а затем действия для каждого из них, а также некоторые другие метаданные.

Очевидно, что я хочу использовать официальный API, который бы поддерживал учетные данные и политики IAM, но не смог найти ничего, кроме поддерживаемых базовых конечных точек API SimulatePolicy и связанных с контекстом.

Спасибо!

розовый

1 Ответ

0 голосов
/ 18 июня 2018

Так же, как в случае, если кто-то ищет то же самое, согласно поддержке AWS, в настоящее время нет официального или поддерживаемого API для получения этой информации.

...