AWS Secrets Manager praktik terbaik - AWS Secrets Manager

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

AWS Secrets Manager praktik terbaik

Secrets Manager menyediakan sejumlah fitur keamanan untuk dipertimbangkan saat Anda mengembangkan dan menerapkan kebijakan keamanan Anda sendiri. Praktik terbaik berikut adalah pedoman umum dan tidak mewakili solusi keamanan yang lengkap. Karena praktik terbaik ini mungkin tidak sesuai atau cukup untuk lingkungan Anda, anggap sebagai pertimbangan yang membantu dan bukan sebagai resep.

Menyimpan kredensi dan informasi sensitif lainnya di AWS Secrets Manager

Secrets Manager dapat membantu meningkatkan postur keamanan dan kepatuhan Anda, serta mengurangi risiko akses tidak sah ke informasi sensitif Anda. Secrets Manager mengenkripsi rahasia saat istirahat menggunakan kunci enkripsi yang Anda miliki dan simpan di AWS Key Management Service ()AWS KMS. Ketika Anda mengambil rahasia, Secrets Manager mendekripsi rahasia dan mengirimkannya dengan aman ke TLS lingkungan lokal Anda. Untuk informasi selengkapnya, lihat Buat sebuah AWS Secrets Manager Rahasia.

Temukan rahasia yang tidak dilindungi dalam kode Anda

CodeGuru Reviewer terintegrasi dengan Secrets Manager untuk menggunakan detektor rahasia yang menemukan rahasia yang tidak dilindungi dalam kode Anda. Detektor rahasia mencari kata sandi hardcode, string koneksi database, nama pengguna, dan banyak lagi. Untuk informasi selengkapnya, lihat Temukan rahasia yang tidak dilindungi dalam kode Anda dengan Amazon Reviewer CodeGuru .

Amazon Q dapat memindai basis kode Anda untuk mencari kerentanan keamanan dan masalah kualitas kode untuk meningkatkan postur aplikasi Anda selama siklus pengembangan. Untuk informasi selengkapnya, lihat Memindai kode Anda dengan Amazon Q di Panduan Pengguna Pengembang Amazon Q.

Pilih kunci enkripsi untuk rahasia Anda

Untuk kebanyakan kasus, kami sarankan menggunakan kunci aws/secretsmanager AWS terkelola untuk mengenkripsi rahasia. Tidak ada biaya untuk menggunakannya.

Untuk dapat mengakses rahasia dari akun lain atau menerapkan kebijakan kunci ke kunci enkripsi, gunakan kunci yang dikelola pelanggan untuk mengenkripsi rahasia.

  • Dalam kebijakan kunci, tetapkan nilai secretsmanager.<region>.amazonaws.com ke kms: ViaService condition key. Ini membatasi penggunaan kunci hanya untuk permintaan dari Secrets Manager.

  • Untuk lebih membatasi penggunaan kunci hanya permintaan dari Secrets Manager dengan konteks yang benar, gunakan kunci atau nilai dalam konteks enkripsi Secrets Manager sebagai syarat untuk menggunakan KMS kunci dengan membuat:

Untuk informasi selengkapnya, lihat Enkripsi rahasia dan dekripsi di AWS Secrets Manager.

Gunakan caching untuk mengambil rahasia

Untuk menggunakan rahasia Anda dengan paling efisien, kami sarankan Anda menggunakan salah satu komponen caching Secrets Manager yang didukung berikut ini untuk menyimpan rahasia Anda dan memperbaruinya hanya jika diperlukan:

Putar rahasia Anda

Jika Anda tidak mengubah rahasia Anda untuk jangka waktu yang lama, rahasia menjadi lebih mungkin untuk dikompromikan. Dengan Secrets Manager, Anda dapat mengatur rotasi otomatis sesering setiap empat jam. Secrets Manager menawarkan dua strategi untuk rotasi: Pengguna tunggal danPengguna bergantian. Untuk informasi selengkapnya, lihat Putar AWS Secrets Manager rahasia.

Mengurangi risiko penggunaan CLI

Saat Anda menggunakan AWS operasi AWS CLI untuk memanggil, Anda memasukkan perintah tersebut di shell perintah. Sebagian besar shell perintah menawarkan fitur yang dapat membahayakan rahasia Anda, seperti logging dan kemampuan untuk melihat perintah yang terakhir dimasukkan. Sebelum Anda menggunakan AWS CLI untuk memasukkan informasi sensitif, pastikan untukMengurangi risiko menggunakan AWS CLI untuk menyimpan rahasia Anda AWS Secrets Manager.

Batasi akses ke rahasia

Dalam pernyataan IAM kebijakan yang mengontrol akses ke rahasia Anda, gunakan prinsip akses yang paling tidak memiliki hak istimewa. Anda dapat menggunakan IAMperan dan kebijakan, kebijakan sumber daya, dan kontrol akses berbasis atribut () ABAC. Untuk informasi selengkapnya, lihat Otentikasi dan kontrol akses untuk AWS Secrets Manager.

Blokir akses luas ke rahasia

Dalam kebijakan identitas yang memungkinkan tindakanPutResourcePolicy, kami sarankan Anda menggunakannyaBlockPublicPolicy: true. Kondisi ini berarti bahwa pengguna hanya dapat melampirkan kebijakan sumber daya ke rahasia jika kebijakan tidak mengizinkan akses luas.

Secrets Manager menggunakan penalaran otomatis Zelkova untuk menganalisis kebijakan sumber daya untuk akses luas. Untuk informasi selengkapnya tentang Zelkova, lihat Cara AWS menggunakan penalaran otomatis untuk membantu Anda mencapai keamanan dalam skala besar di Blog Keamanan. AWS

Contoh berikut menunjukkan cara menggunakanBlockPublicPolicy.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "secretsmanager:PutResourcePolicy", "Resource": "SecretId", "Condition": { "Bool": { "secretsmanager:BlockPublicPolicy": "true" } } } }

Berhati-hatilah dengan kondisi alamat IP dalam kebijakan

Berhati-hatilah saat Anda menentukan operator kondisi alamat IP atau kunci aws:SourceIp kondisi dalam pernyataan kebijakan yang mengizinkan atau menolak akses ke Secrets Manager. Misalnya, jika Anda melampirkan kebijakan yang membatasi AWS tindakan untuk permintaan dari rentang alamat IP jaringan perusahaan Anda ke rahasia, maka permintaan Anda sebagai IAM pengguna yang menjalankan permintaan dari jaringan perusahaan berfungsi seperti yang diharapkan. Namun, jika Anda mengaktifkan layanan lain untuk mengakses rahasia atas nama Anda, seperti saat Anda mengaktifkan rotasi dengan fungsi Lambda, fungsi tersebut akan memanggil operasi Secrets Manager dari ruang alamat AWS-internal. Permintaan yang terkena dampak kebijakan dengan filter alamat IP gagal.

Selain itu, kunci aws:sourceIP kondisi kurang efektif ketika permintaan berasal dari VPC titik akhir Amazon. Untuk membatasi permintaan ke VPC titik akhir tertentu, gunakan. Batasi permintaan dengan VPC kondisi titik akhir

Batasi permintaan dengan VPC kondisi titik akhir

Untuk mengizinkan atau menolak akses ke permintaan dari VPC titik akhir tertentuVPC, gunakan aws:SourceVpc untuk membatasi akses ke permintaan dari yang ditentukan VPC atau aws:SourceVpce untuk membatasi akses ke permintaan dari titik VPC akhir yang ditentukan. Lihat Contoh: Izin dan VPCs.

  • aws:SourceVpcmembatasi akses ke permintaan dari yang ditentukanVPC.

  • aws:SourceVpcemembatasi akses ke permintaan dari VPC titik akhir yang ditentukan.

Jika Anda menggunakan kunci kondisi ini dalam pernyataan kebijakan sumber daya yang mengizinkan atau menolak akses ke rahasia Secrets Manager, Anda dapat secara tidak sengaja menolak akses ke layanan yang menggunakan Secrets Manager untuk mengakses rahasia atas nama Anda. Hanya beberapa AWS layanan yang dapat berjalan dengan titik akhir di dalam AndaVPC. Jika Anda membatasi permintaan rahasia ke VPC titik akhir VPC atau titik akhir, maka panggilan ke Secrets Manager dari layanan yang tidak dikonfigurasi untuk layanan dapat gagal.

Lihat Menggunakan titik AWS Secrets Manager VPC akhir.

Replikasi rahasia

Secrets Manager dapat secara otomatis mereplikasi rahasia Anda ke beberapa AWS Wilayah untuk memenuhi persyaratan ketahanan atau pemulihan bencana Anda. Untuk informasi selengkapnya, lihat Replikasi AWS Secrets Manager rahasia di seluruh Wilayah.

Memantau rahasia

Secrets Manager memungkinkan Anda untuk mengaudit dan memantau rahasia melalui integrasi dengan layanan AWS pencatatan, pemantauan, dan pemberitahuan. Untuk informasi selengkapnya, lihat:

Jalankan infrastruktur Anda di jaringan pribadi

Kami menyarankan Anda menjalankan infrastruktur sebanyak mungkin di jaringan pribadi yang tidak dapat diakses dari internet publik. Anda dapat membuat koneksi pribadi antara Secrets Manager VPC dan Secrets Manager dengan membuat VPCtitik akhir antarmuka. Untuk informasi selengkapnya, lihat Menggunakan titik AWS Secrets Manager VPC akhir.