Apakah ada cara untuk mendaftar semua sumber daya di AWS

138

Apakah ada cara untuk membuat daftar semua sumber daya di AWS? Untuk semua wilayah, semua sumber daya .. Seperti daftar semua instance EC2, semua VPC, semua API di API Gateway, dll. Saya ingin mendaftar semua sumber daya untuk akun saya, karena sulit bagi saya untuk menemukan sumber daya mana yang dapat saya gunakan lepaskan sekarang.

Lakin Lu
sumber
1
Lihat jawaban saya untuk pertanyaan ini - stackoverflow.com/questions/43984337/multiple-aws-reigon/… Harus cukup untuk membantu Anda memulai.
Colwin
2
Anda dapat membuat Grup Sumber Daya untuk semua wilayah dan untuk semua layanan yang perlu Anda lihat. Resource Group akan menunjukkan semua sumber daya ini di satu tempat. Anda dapat menggunakan aws cli untuk ini juga. aws.amazon.com/blogs/aws/resource-groups-and-tagging
Ashwini

Jawaban:

8

Sunting: Jawaban ini sudah usang dan salah . Ada beberapa cara untuk membuat daftar sumber daya AWS (Editor Tag AWS, dll.). Periksa jawaban lain untuk lebih jelasnya.


Tidak.

Setiap Layanan AWS (mis. Amazon EC2, Amazon S3) memiliki serangkaian panggilan API sendiri. Juga, masing-masing Wilayah independen.

Untuk mendapatkan daftar semua sumber daya, Anda harus melakukan panggilan API ke setiap layanan di setiap wilayah.

Anda mungkin ingin mengaktifkan AWS Config :

AWS Config menyediakan tampilan terperinci tentang konfigurasi sumber daya AWS di akun AWS Anda. Ini termasuk bagaimana sumber daya terkait satu sama lain dan bagaimana mereka dikonfigurasikan di masa lalu sehingga Anda dapat melihat bagaimana konfigurasi dan hubungan berubah dari waktu ke waktu.

Namun, AWS Config hanya mengumpulkan informasi tentang sumber daya terkait EC2 / VPC, bukan semua yang ada di akun AWS Anda.

John Rotenstein
sumber
14
Jawaban ini salah. Anda memang dapat membuat daftar semua layanan di semua wilayah menggunakan Cost Explorer.
Carles Alcolea
9
Jawaban ini kemungkinan besar sudah usang. Sekarang, seperti disebutkan oleh beberapa orang di sini, Anda dapat menggunakan Pengelola Tag atau 'Biaya bulanan menurut layanan' di Penjelajah Biaya .
maximpa
AWS Config sepertinya bekerja untuk saya. Saya ingin menemukan foto yang saya ambil dengan alasan lain dan lupa, dan tampaknya menghapus contoh EC2 untuk itu. mendapatkan daftar AWS Config yang lengkap dan kemudian mencari 'jepret', saya menemukannya.
Peter Smith
206

Iya. Gunakan Tag Editor . Anda dapat mengklik untuk mengelola sumber daya individual.

https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/tag-editor.html

schmmd
sumber
42
Untuk membuat daftar semua sumber daya menggunakan Tag Editor, Anda secara manual memilih semua wilayah yang terdaftar (15 total wilayah pada tanggal hari ini), dan pilih "Semua jenis sumber daya", dan jangan menentukan tag. Kemudian klik "Temukan sumber daya" dan ini akan menampilkan semua sumber daya yang dibuat di akun Anda.
Garrison Becker
3
perhatikan ini hanya akan menanyakan jenis sumber daya yang didukung docs.aws.amazon.com/ARG/latest/userguide/…
ekcrisp
18
Ini adalah ide jenius tapi sayangnya banyak jenis sumber daya penting belum didukung pada hari ini September 2018. Saya tidak menemukan tabel DynamoDB, API Gateway, Lambda, peran IAM, dll ....
Bing Ren
3
Sayangnya tautan "Editor Tag" sekarang adalah 404.
wool.in.silver
1
Editor tag lama dan tautan di atas hilang. Anda dapat menggunakan editor tag baru, tetapi saya tidak melihat cara untuk menyimpan hasil multi-wilayah. Lihat console.aws.amazon.com/resource-groups dan dokumen di docs.aws.amazon.com/ARG/latest/userguide/tag-editor.html
AstroTom
44

Anda dapat menggunakan Tag Editor.

  1. Pergi ke Konsol AWS
  2. Di Panel Navigasi TOP, klik Resource GroupsDropdown
  3. Klik Tag Editor AWS mendaftar semua sumber daya di semua wilayah

Di sini kita dapat memilih salah satu wilayah tertentu di mana kita ingin mencari atau memilih semua wilayah dari dropdown. Kemudian kita dapat memilih sumber daya aktual yang ingin kita cari atau kita juga dapat mengklik sumber daya individual.

masukkan deskripsi gambar di sini

Raman Sahasi
sumber
2
Ini jawaban yang benar. Bekerja dengan baik untuk saya, terima kasih!
Edward Corrigall
Saya setuju ini adalah jawaban yang benar, ini berfungsi dan sangat mudah diikuti
Ben Gosub
8

Saya akan menggunakan "editor tag" di "grup sumber daya" untuk ini, seperti yang disarankan oleh Ashwini.

Anda dapat dengan mudah mendaftar semua sumber daya di semua wilayah tanpa pengaturan apa pun, dll.
Dan meskipun ini mencakup semua VPC + grup keamanan default dll (sehingga Anda akan mendapatkan ~ 140 item bahkan jika akun Anda kosong), Anda masih dapat dengan mudah memfilter ini, baik di dalam tag editor, atau ekspor ke csv dan filter di Excel, misalnya.

Dylan
sumber
7

Gunakan PacBot (Kebijakan sebagai Kode Bot) - Proyek Open Source yang merupakan platform untuk pemantauan kepatuhan yang berkelanjutan, pelaporan kepatuhan, dan otomatisasi keamanan untuk cloud. Semua sumber daya di semua akun dan semua wilayah ditemukan oleh PacBot dievaluasi terhadap kebijakan ini untuk mengukur kesesuaian kebijakan. Fitur Pencarian Omni juga tersedia memberikan kemampuan untuk mencari semua sumber daya yang ditemukan. Bahkan Anda dapat menghentikan / menghapus detail sumber daya melalui PacBot.

Pencarian Omni

Pencarian Omni

Halaman Hasil Pencarian Dengan pemfilteran Hasil

Halaman Hasil Pencarian Dengan pemfilteran Hasil

Halaman Aset / Detail Aset

Halaman Aset / Detail Aset

Berikut ini adalah kemampuan PacBot utama

  • Penilaian kepatuhan berkelanjutan.
  • Pelaporan kepatuhan yang terperinci.
  • Perbaiki Otomatis untuk pelanggaran kebijakan.
  • Omni Search - Kemampuan untuk mencari semua sumber yang ditemukan.
  • Pelacakan pelanggaran kebijakan yang disederhanakan.
  • Portal swalayan.
  • Kebijakan khusus dan tindakan perbaikan otomatis khusus.
  • Pengelompokan aset dinamis untuk melihat kepatuhan.
  • Kemampuan untuk membuat beberapa domain kepatuhan.
  • Manajemen pengecualian.
  • Intisari Email.
  • Mendukung banyak akun AWS.
  • Penginstal sepenuhnya otomatis.
  • Dasbor yang dapat disesuaikan.
  • Dukungan OAuth2.
  • Integrasi AD Azure untuk login.
  • Kontrol akses berbasis peran.
  • Aset 360 derajat.
Nidhish Krishnan
sumber
1
@SyCode Ya Anda dapat meng-host-nya diprem
Nidhish Krishnan
Bisakah Anda menunjukkan caranya, saya melihat tidak menyebutkan ini dalam dokumentasi, sepertinya saya harus menggunakan semua layanan AWS yang diperlukan. Misalnya saya ingin mengganti RedShift dengan MySQL.
SyCode
2
@SyCode pengaturan instalasi lengkap diberikan pada tautan
Nidhish Krishnan
5

Alat yang disediakan AWS tidak berguna karena tidak komprehensif.

Dalam pencarian saya sendiri untuk mengurangi masalah ini dan menarik daftar semua sumber daya AWS saya, saya menemukan ini: https://github.com/JohannesEbke/aws_list_all

Saya belum mengujinya, tetapi terlihat sah.

Luke Chavers
sumber
3

The AWS Billing Management Console akan memberikan Spend Bulan-to-Date oleh Dinas kumuh.

dbkaplun
sumber
1
Dibutuhkan ~ 24 jam untuk Cost Explorer untuk diisi tetapi saya suka jawaban ini :)
f01
3

Saya tahu ini adalah pertanyaan lama tetapi saya juga ingin membantu.

Sebenarnya, kami memiliki AWS Config , yang membantu kami mencari semua sumber daya di cloud kami. Anda dapat melakukan kueri SQL juga.

Saya benar-benar mendorong Anda semua untuk mengetahui layanan luar biasa ini.

Brenno Leal
sumber
2

Iya.

Saya memiliki masalah yang sama, mencoba mencari tahu apa yang sebenarnya terjadi di akun AWS saya.

Akhirnya, saya akhirnya menulis AWSRetriver , alat desktop untuk membuat daftar sumber daya AWS di semua wilayah.

Ini adalah alat sederhana dan mudah yang berisi daftar semuanya ... (semoga) Sumber Daya AWS

Danny Tylman
sumber
1

Sudah terlambat tetapi Anda harus melihat ini. Bukan CLI yang saya tahu tetapi masih layak hanya merobohkan skrip shell kecil untuk melakukan apa yang Anda butuhkan:

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

Ini adalah pustaka python yang dengan kata-katanya sendiri:

"Deskripsi proyek Daftar semua sumber daya dalam akun AWS, semua wilayah, semua layanan (*). Menulis file JSON untuk diproses lebih lanjut.

(*) Tidak ada jaminan untuk kelengkapan. Gunakan lansiran penagihan jika Anda khawatir tentang biaya. "

Surj
sumber
0

Saya juga mencari fitur serupa "daftar semua sumber daya" di AWS tetapi tidak dapat menemukan sesuatu yang cukup baik.

"Grup Sumber Daya" tidak membantu karena hanya mencantumkan sumber daya yang telah ditandai dan pengguna harus menentukan tag. Jika Anda kehilangan untuk menandai sumber daya, itu tidak akan muncul di "Grup Sumber Daya" .

UI dari "Buat grup sumber daya"

Fitur yang lebih cocok adalah "Grup Sumber Daya" -> "Tag Editor" seperti yang telah disebutkan dalam posting sebelumnya. Pilih wilayah dan jenis sumber daya untuk melihat daftar sumber daya di editor Tag. Ini melayani tujuan tetapi tidak sangat user-friendly karena saya harus memasukkan tipe wilayah dan sumber daya setiap kali saya ingin menggunakannya. Saya masih mencari UI yang mudah digunakan.

UI dari "Temukan sumber" di bawah "Tag Editor"

Dipak Kumar Singh
sumber
Sebenarnya, ini adalah penyelamat asli bagi saya! Cukup buka Tag Editor, pilih semua wilayah satu per satu (jumlahnya tidak banyak) dan "Semua jenis sumber daya" dan tekan "Temukan sumber daya". Kemudian Anda dapat mengunduh seluruh daftar sebagai CSV.
Tero Tilus
0

Coba ini

Hanya untuk ec2:

from skew import scan

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

Untuk semua sumber daya:

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

Referensi: https://github.com/scopely-devops/skew

STang
sumber
0

EDIT: Jawaban ini sudah usang. Periksa jawaban lainnya.

Tidak,
Tidak ada cara untuk mendapatkan semua sumber daya dalam akun Anda dalam sekali jalan. Setiap wilayah bersifat independen dan untuk beberapa layanan seperti konsep IAM suatu wilayah tidak ada sama sekali. Meskipun ada panggilan API yang tersedia untuk mendaftar sumber daya dan layanan.
Sebagai contoh:

  • Untuk mendapatkan daftar semua wilayah yang tersedia untuk akun Anda:

    output, err := client.DescribeRegions(&ec2.DescribeRegionsInput{})
    

  • Untuk mendapatkan daftar pengguna, peran, atau grup IAM, Anda dapat menggunakan:

    client.GetAccountAuthorizationDetails(&iam.GetAccountAuthorizationDetailsInput{})

    Anda dapat menemukan detail lebih lanjut tentang panggilan API dan penggunaannya di: https://docs.aws.amazon.com/sdk-for-go/api/service/iam/

    Tautan di atas hanya untuk IAM. Demikian pula, Anda dapat menemukan API untuk semua sumber daya dan layanan lainnya.

  • Abhishek Soni
    sumber
    Jawaban ini sudah usang
    Carles Alcolea
    -1

    Pilihan lain adalah menggunakan skrip ini yang menjalankan "aws configservice list-found-resources --resource-type" untuk setiap sumber daya

    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
    
    Luis
    sumber