Подтвердить что ты не робот

Есть ли способ перечислить все ресурсы в AWS

Есть ли способ перечислить все ресурсы в AWS? Для всех регионов, для всех ресурсов. Например, перечислить все экземпляры EC2, все VPC, все API-интерфейсы в API-шлюзе и т.д. Я хотел бы перечислить все ресурсы для своей учетной записи, поскольку мне сложно найти, какие ресурсы я могу Откажись сейчас.

4b9b3361

Ответ 1

Нет.

Каждый сервис AWS (например, Amazon EC2, Amazon S3) имеет свой собственный набор вызовов API. Также каждый регион независим.

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

Возможно, вы захотите активировать AWS Config:

AWS Config предоставляет подробное представление о конфигурации ресурсов AWS в вашей учетной записи AWS. Это включает в себя, как ресурсы связаны друг с другом и как они были настроены в прошлом, чтобы вы могли видеть, как конфигурации и отношения меняются с течением времени.

Однако AWS Config собирает информацию только о ресурсах, связанных с EC2/VPC, а не обо всех данных в вашей учетной записи AWS.

Ответ 3

Эта ссылка описывает, как вы можете найти нетегированные ресурсы, используя редактор тегов. Вы можете добавить все регионы в поле регионов вверху, а затем выбрать все типы ресурсов, и в запросе будут перечислены все вещи.

https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/scenario-finding-untagged.html

Ответ 4

Вы можете использовать редактор тегов.

  1. Перейти на консоль AWS
  2. В верхней навигационной панели нажмите раскрывающийся список Resource Groups
  3. Нажмите Tag Editor AWS list all resources across all regions

Здесь мы можем выбрать либо конкретный регион, в котором мы хотим искать, либо выбрать все регионы из выпадающего списка. Затем мы можем выбрать фактические ресурсы, которые мы хотим искать, или мы также можем нажать на отдельные ресурсы.

enter image description here

Ответ 5

Использовать PacBot (Policy as Code Bot) - проект с открытым исходным кодом, представляющий собой платформу для непрерывного мониторинга соответствия, отчетности о соответствии и автоматизации безопасности в облаке. Все ресурсы во всех учетных записях и во всех регионах, обнаруженные PacBot, оцениваются на предмет соответствия этим политикам. Также доступны функции поиска Omni, позволяющие искать все обнаруженные ресурсы. Даже вы можете прекратить/удалить информацию о ресурсе через PacBot.

Омни Поиск

Omni Search

Страница результатов поиска с фильтрацией результатов

Search Results Page With Results filtering

Актив 360/Страница сведений об активе

Asset 360 / Asset Details Page

Ниже приведены основные возможности PacBot

  • Непрерывная оценка соответствия.
  • Подробная отчетность о соответствии.
  • Авто-исправление для нарушений политики.
  • Omni Search - Возможность поиска по всем обнаруженным ресурсам.
  • Упрощенное отслеживание нарушений правил.
  • Портал самообслуживания.
  • Пользовательские политики и настраиваемые действия авто-исправления.
  • Динамическая группировка активов для просмотра соответствия.
  • Возможность создания нескольких доменов соответствия.
  • Управление исключениями.
  • Дайджесты электронной почты.
  • Поддерживает несколько учетных записей AWS.
  • Полностью автоматизированный установщик.
  • Настраиваемые панели инструментов.
  • Поддержка OAuth2.
  • Интеграция Azure AD для входа в систему.
  • Ролевое управление доступом.
  • Актив 360 градусов.

Ответ 6

Я бы поехал с "редактором тегов" в "группы ресурсов" для этого, как предложил Ашвини.

Вы можете легко перечислить все ресурсы во всех регионах без каких-либо настроек и т.д.
И хотя это включает в себя все группы безопасности VPC + + и т.д. (Поэтому вы получите ~ 140 элементов, даже если ваша учетная запись пуста), вы все равно можете легко фильтровать это, либо в редакторе тегов, либо экспортировать в csv и фильтровать в Например, Excel.

Ответ 7

Инструменты, предоставляемые AWS, бесполезны, поскольку они не являются исчерпывающими.

В своем собственном стремлении решить эту проблему и получить список всех моих ресурсов AWS я обнаружил следующее: https://github.com/JohannesEbke/aws_list_all

Я еще не проверял это, но это выглядит законным.

Ответ 8

AWS хочет, чтобы вы забыли ресурсы, а затем заплатили за них...

Ответ 10

Да.

У меня была та же проблема, пытаясь выяснить, что именно происходит в моей учетной записи AWS.

В конце концов я написал AWSRetriver, инструмент для настольных компьютеров, который позволяет перечислять ресурсы AWS во всех регионах.

Это простой и простой инструмент, который перечисляет все... (надеюсь) AWS Resources

Ответ 11

Я знаю, что это старый вопрос, но я бы тоже хотел помочь.

На самом деле, у нас есть AWS Config, который помогает нам искать все ресурсы в нашем облаке. Вы также можете выполнять SQL-запросы.

Я действительно призываю всех вас узнать этот удивительный сервис.

Ответ 12

Я также ищу аналогичную функцию "Перечислить все ресурсы" в AWS, но не смог найти ничего хорошего.

"Группы ресурсов" не помогают, поскольку они перечисляют только те ресурсы, которые были помечены, и пользователь должен указать тег. Если вы пропустите тег ресурса, это не будет отображаться в "Группы ресурсов" .

Пользовательский интерфейс "Создать группу ресурсов"

Более подходящей особенностью является "Группы ресурсов" → "Редактор тегов" , как уже упоминалось в предыдущем посте. Выберите области (области) и типы ресурсов, чтобы просмотреть список ресурсов в редакторе тегов. Это служит цели, но не очень удобной для пользователя, потому что я должен вводить регион и тип ресурса каждый раз, когда я хочу его использовать. Я все еще ищу удобный пользовательский интерфейс.

Пользовательский интерфейс "Найти ресурс" в разделе "Редактор тегов"

Ответ 13

Нет,
Невозможно получить все ресурсы в вашей учетной записи за один раз. Каждый регион является независимым, и для некоторых служб, таких как концепция IAM региона, вообще не существует. Хотя есть списки API, доступные для перечисления ресурсов и служб. Например:

Чтобы получить список всех доступных регионов для вашей учетной записи:
output, err := client.DescribeRegions(&ec2.DescribeRegionsInput{})

Чтобы получить список пользователей IAM, ролей или группы, которые вы можете использовать:

client.GetAccountAuthorizationDetails(&iam.GetAccountAuthorizationDetailsInput{})

Подробнее о вызовах API и их использовании вы можете узнать по адресу: https://docs.aws.amazon.com/sdk-for-go/api/service/iam/

Выше ссылка предназначена только для IAM. Аналогичным образом вы можете найти API для всех других ресурсов и служб.

Ответ 14

Попробуй это

Только для ec2:

from skew import scan

    arn = scan('arn:aws:ec2:us-west-2:123456789012:instance/i-12345678')
    for resource in arn:
        print(resource.data)

Для всех ресурсов:

arn = scan('arn:aws:*:*:<<youraccountId>>:instance*')
for resource in arn:
    print(resource.data)

Ссылка: https://github.com/scopely-devops/skew

Ответ 15

Уже поздно, но вы должны посмотреть на это. Не CLI, я знаю, но все же стоит просто выбить небольшой сценарий оболочки, чтобы сделать то, что вам нужно:

https://pypi.org/project/aws-list-all/

Это библиотека python, что в нем своими словами:

"Описание проекта Перечислите все ресурсы в учетной записи AWS, все регионы, все сервисы (*). Записывает файлы JSON для дальнейшей обработки.

(*) Нет гарантий полноты. Используйте уведомления о выставлении счетов, если вы беспокоитесь о расходах. "

Ответ 16

Вы можете использовать запрос в Консоли конфигурации AWS здесь. (Регион может измениться для вас) https://console.aws.amazon.com/config/home?region=us-east-1#/resources/query

запрос будет выглядеть следующим образом.

SELECT
  resourceId,
  resourceName,
  resourceType,
  relationships
WHERE
relationships.resourceId = 'vpc-#######'

Ответ 17

Другой вариант - использовать этот сценарий, который выполняет "aws configservice list-found-resources -resource-type" для каждого ресурса

for i in  AWS::EC2::CustomerGateway AWS::EC2::EIP AWS::EC2::Host AWS::EC2::Instance AWS::EC2::InternetGateway AWS::EC2::NetworkAcl AWS::EC2::NetworkInterface AWS::EC2::RouteTable AWS::EC2::SecurityGroup AWS::EC2::Subnet AWS::CloudTrail::Trail AWS::EC2::Volume AWS::EC2::VPC AWS::EC2::VPNConnection AWS::EC2::VPNGateway AWS::IAM::Group AWS::IAM::Policy AWS::IAM::Role AWS::IAM::User AWS::ACM::Certificate AWS::RDS::DBInstance AWS::RDS::DBSubnetGroup AWS::RDS::DBSecurityGroup AWS::RDS::DBSnapshot AWS::RDS::EventSubscription AWS::ElasticLoadBalancingV2::LoadBalancer AWS::S3::Bucket AWS::SSM::ManagedInstanceInventory AWS::Redshift::Cluster AWS::Redshift::ClusterSnapshot AWS::Redshift::ClusterParameterGroup AWS::Redshift::ClusterSecurityGroup  AWS::Redshift::ClusterSubnetGroup AWS::Redshift::EventSubscription AWS::CloudWatch::Alarm AWS::CloudFormation::Stack AWS::DynamoDB::Table AWS::AutoScaling::AutoScalingGroup AWS::AutoScaling::LaunchConfiguration AWS::AutoScaling::ScalingPolicy AWS::AutoScaling::ScheduledAction AWS::CodeBuild::Project AWS::WAF::RateBasedRule AWS::WAF::Rule AWS::WAF::WebACL AWS::WAFRegional::RateBasedRule AWS::WAFRegional::Rule AWS::WAFRegional::WebACL AWS::CloudFront::Distribution  AWS::CloudFront::StreamingDistribution AWS::WAF::RuleGroup AWS::WAFRegional::RuleGroup AWS::Lambda::Function AWS::ElasticBeanstalk::Application AWS::ElasticBeanstalk::ApplicationVersion AWS::ElasticBeanstalk::Environment AWS::ElasticLoadBalancing::LoadBalancer AWS::XRay::EncryptionConfig AWS::SSM::AssociationCompliance AWS::SSM::PatchCompliance AWS::Shield::Protection AWS::ShieldRegional::Protection AWS::Config::ResourceCompliance AWS::CodePipeline::Pipeline; do aws configservice list-discovered-resources --resource-type $i; done