AWSのすべてのリソースを一覧表示する方法はありますか?すべての地域、すべてのリソース。すべてのEC2インスタンス、すべてのVPC、API Gateway内のすべてのAPIなどを一覧表示することができます。今放棄する。
いいえ.
各AWSサービス(例:Amazon EC2、Amazon S3)には独自のAPI呼び出しのセットがあります。また、各地域は独立しています。
すべてのリソースのリストを取得するには、すべての地域のすべてのサービスに対してAPI呼び出しを行う必要があります。
アクティブにしたい場合があります AWS Config :
AWS Configは、AWSアカウントのAWSリソースの設定の詳細ビューを提供します。これには、リソースが互いにどのように関連し、過去にどのように構成されたかが含まれるため、構成と関係が時間の経過とともにどのように変化するかがわかります。
ただし、AWS ConfigはEC2/VPC関連のリソースに関する情報のみを収集し、AWSアカウントのすべての情報は収集しません。
はい。 タグエディタ を使用してください。クリックして個々のリソースを管理できます。
https://docs.aws.Amazon.com/awsconsolehelpdocs/latest/gsg/tag-editor.html
このリンクでは、タグエディタを使用してタグなしのリソースを見つける方法について説明します。基本的に、すべての地域を上部の[地域]ボックスに追加してから、すべてのリソースタイプを選択すると、クエリによってすべてのものが一覧表示されます。
https://docs.aws.Amazon.com/awsconsolehelpdocs/latest/gsg/scenario-finding-untagged.html
PacBot(Code Botとしてのポリシー) - クラウドの継続的なコンプライアンス監視、コンプライアンスレポート、およびセキュリティ自動化のためのプラットフォームであるオープンソースプロジェクト。すべてのアカウントおよびすべての地域にわたるすべてのリソースがPacBotによって検出され、ポリシーの適合性を評価するためにこれらのポリシーに対して評価されます。オムニ検索機能も利用可能で、発見されたすべてのリソースを検索することができます。あなたもPacBotを通してリソースの詳細を終了/削除することができます。
オムニ検索
検索結果ページと結果のフィルタリング
資産360 /資産の詳細ページ
以下はPacBotの主な機能です。
Ashwiniが示唆しているように、私はこれを行うために "リソースグループ"の "タグエディタ"を使います。
設定などをしなくても、すべての地域のすべてのリソースを簡単に一覧表示できます。
これにはすべてのデフォルトVPC +セキュリティグループなどが含まれますが(アカウントが空の場合でも〜140の項目が表示されます)、タグエディタまたはエクスポートのいずれかで、これをかなり簡単にフィルタリングできますたとえば、CSVに変換してExcelでフィルタ処理します。
AWS提供のツールは包括的ではないため、役に立ちません。
この問題を軽減し、すべてのAWSリソースのリストを取得するという私自身の探求の中で、私はこれを見つけました。 https://github.com/JohannesEbke/aws_list_all
まだテストしていませんが、合法的に見えます。
AWSは、リソースを忘れてから支払いを求めています...
はい。
私は同じ問題を抱えていて、自分のAWSアカウントで何が起こっているのか正確に把握しようとしました。
結局、私は AWSRetriver という、すべての地域のAWSリソースを一覧表示するデスクトップツールを作成しました。
AWS Billing Management Console を使用すると、月ごとのサービス別消費支出が表示されます。
これを試して
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)
ここでAWS Config Consoleでクエリを使用できます。 (地域は変更される場合があります) https://console.aws.Amazon.com/config/home?region=us-east-1#/resources/query
クエリは次のようになります。
SELECT
resourceId,
resourceName,
resourceType,
relationships
WHERE
relationships.resourceId = 'vpc-#######'
いいえ、
アカウント内のすべてのリソースを一度に取得する方法はありません。各地域は独立しており、IAMのような一部のサービスの地域の概念はまったく存在しません。リソースとサービスをリストするために利用可能なAPI呼び出しがありますが。
例えば:
output, err := client.DescribeRegions(&ec2.DescribeRegionsInput{})
client.GetAccountAuthorizationDetails(&iam.GetAccountAuthorizationDetailsInput{})
API呼び出しとその使用方法の詳細については、次のURLを参照してください。 https://docs.aws.Amazon.com/sdk-for-go/api/service/iam/
上記リンクはIAM専用です。同様に、他のすべてのリソースやサービスのためのAPIを見つけることができます。
私はまた、AWSで同様の機能「すべてのリソースを一覧表示」を探していますが、十分に良いものが見つかりませんでした。
"リソースグループ"はタグ付けされたリソースを一覧表示するだけなのでユーザーはタグを指定する必要があるので役に立ちません。リソースにタグを付けなかった場合、それは "Resource Groups" には表示されません。
以前の記事で既に述べたように、より適切な機能は "リソースグループ" - > "タグエディタ" です。タグエディタでリソースの一覧を表示するには、地域とリソースタイプを選択します。これは目的を果たしますが、使用するたびに地域とリソースの種類を入力する必要があるため、あまりユーザーフレンドリーではありません。私はまだ使いやすいUIを探しています。
それは遅すぎるがあなたはこれを見なければならない。 CLIではない私は知っているが、それでもあなたが必要なことをするためにちょっとしたShellスクリプトをノックアウトする価値があるだけである:
https://pypi.org/project/aws-list-all/
それはそれ自身の言葉でそれがpythonライブラリです:
"プロジェクトの説明AWSアカウント内のすべてのリソース、すべての地域、すべてのサービスを一覧表示します(*)。さらに処理するためにJSONファイルを書き込みます。
(*)完全性を保証するものではありません。費用が気になる場合は、請求アラートを使用してください。」
別のオプションは、すべてのリソースに対して「aws configservice list-discovered-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