View a markdown version of this page

Menggunakan enkripsi di sisi server dengan kunci yang disediakan pelanggan (SSE-C) - Amazon Simple Storage Service

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

Menggunakan enkripsi di sisi server dengan kunci yang disediakan pelanggan (SSE-C)

Enkripsi sisi-server adalah tentang melindungi data diam. Enkripsi di sisi server hanya mengenkripsi data objek, bukan metadata objek. Anda dapat menggunakan enkripsi sisi server dengan kunci yang disediakan pelanggan (SSE-C) di bucket tujuan umum Anda untuk mengenkripsi data Anda dengan kunci enkripsi Anda sendiri. Dengan kunci enkripsi yang Anda sediakan sebagai bagian dari permintaan Anda, Amazon S3 mengelola enkripsi data saat menulis ke disk dan dekripsi data saat Anda mengakses objek Anda. Oleh karena itu, Anda tidak perlu menyimpan kode apa pun untuk melakukan enkripsi dan dekripsi data. Satu-satunya hal yang perlu Anda lakukan adalah mengelola kunci enkripsi yang Anda berikan.

Mulai April 2026, SSE-C dinonaktifkan secara default untuk semua bucket tujuan umum baru dan bucket yang ada di akun tanpa objek terenkripsi SSE-C. Sebagian besar beban kerja modern menggunakan enkripsi sisi server dengan kunci terkelola Amazon S3 (SSE-S3) atau kunci KMS ( AWS SSE-KMS) sebagai gantinya, karena SSE-C mengharuskan Anda untuk menyediakan kunci enkripsi dengan setiap permintaan, sehingga tidak praktis untuk berbagi akses dengan pengguna, peran, atau layanan lain yang beroperasi pada data Anda. AWS Untuk mempelajari lebih lanjut tentang SSE-KMS, lihat. Menggunakan enkripsi sisi server dengan AWS KMS kunci (SSE-KMS)

Jika beban kerja Anda memerlukan SSE-C, Anda harus mengaktifkannya secara eksplisit dengan menyetel BlockedEncryptionTypes ke NONE konfigurasi enkripsi default bucket menggunakan API. PutBucketEncryption Sementara SSE-C diblokir, setiap,PutObject,CopyObject, Multipart UploadPostObject, atau permintaan replikasi yang menentukan enkripsi SSE-C ditolak dengan kesalahan HTTP 403. AccessDenied Untuk mempelajari selengkapnya, lihat Memblokir atau membuka blokir SSE-C untuk bucket tujuan umum.

Tidak ada biaya tambahan untuk penggunaan SSE-C. Namun, permintaan untuk mengonfigurasi dan menggunakan SSE-C dikenakan biaya permintaan Amazon S3 standar. Untuk informasi tentang harga, lihat Harga Amazon S3.

penting

Amazon Simple Storage Service sekarang menerapkan pengaturan keamanan bucket default baru yang secara otomatis menonaktifkan enkripsi sisi server dengan kunci yang disediakan pelanggan (SSE-C) untuk semua bucket tujuan umum yang baru. Pada April 2026, Amazon S3 menerapkan pembaruan sehingga semua bucket tujuan umum baru menonaktifkan enkripsi SSE-C untuk semua permintaan tulis baru. Untuk bucket yang ada tanpa objek terenkripsi SSE-C, Amazon S3 juga menonaktifkan SSE-C untuk semua permintaan penulisan baru. Akun AWS Dengan perubahan ini, aplikasi yang membutuhkan enkripsi SSE-C harus sengaja mengaktifkan SSE-C dengan menggunakan operasi PutBucketEncryptionAPI setelah membuat bucket baru. Untuk informasi lebih lanjut tentang perubahan ini, lihatPengaturan SSE-C standar untuk bucket baru FAQ.

Pertimbangan sebelum menggunakan SSE-C

  • S3 tidak pernah menyimpan kunci enkripsi saat Anda menggunakan SSE-C. Anda harus menyediakan kunci enkripsi setiap kali Anda ingin siapa pun mengunduh data terenkripsi SSE-C Anda dari S3.

    • Anda mengelola pemetaan kunci enkripsi mana yang digunakan untuk mengenkripsi objek yang ingin dituju. Anda bertanggung jawab untuk melacak kunci enkripsi yang Anda berikan untuk objek yang ingin dituju. Itu juga berarti jika Anda kehilangan kunci enkripsi, Anda kehilangan objek.

    • Karena Anda mengelola kunci enkripsi di sisi klien, Anda mengelola perlindungan tambahan, seperti rotasi utama, di sisi klien.

    • Desain ini dapat mempersulit berbagi kunci SSE-C Anda dengan pengguna, peran, atau AWS layanan lain yang perlu beroperasi pada data Anda. Karena dukungan luas untuk SSE-KMS AWS, sebagian besar beban kerja modern tidak menggunakan SSE-C karena tidak memiliki fleksibilitas SSE-KMS. Untuk mempelajari lebih lanjut tentang SSE-KMS, lihat Menggunakan enkripsi sisi server dengan kunci KMS (SSE-KMS). AWS

    • Ini berarti bahwa objek yang dienkripsi dengan SSE-C tidak dapat didekripsi secara native oleh layanan terkelola. AWS

  • Anda harus menggunakan HTTPS saat menentukan header SSE-C pada permintaan Anda.

    • Amazon S3 menolak permintaan apa pun yang dibuat melalui HTTP saat menggunakan SSE-C. Untuk pertimbangan keamanan, kami menyarankan Anda mempertimbangkan kunci apa pun yang salah Anda kirimkan melalui HTTP telah disusupi. Buang kuncinya dan putar seperlunya.

  • Jika bucket Anda mengaktifkan versi, setiap versi objek yang Anda unggah dapat memiliki kunci enkripsi sendiri. Anda bertanggung jawab untuk melacak kunci enkripsi yang Anda berikan untuk objek yang ingin dituju.

  • SSE-C tidak didukung di Konsol Amazon S3. Anda tidak dapat menggunakan konsol Amazon S3 untuk mengunggah objek dan menentukan enkripsi SSE-C. Anda juga tidak dapat menggunakan konsol untuk memperbarui (misalnya, mengubah kelas penyimpanan atau menambahkan metadata) objek yang ada yang disimpan menggunakan SSE-C.

  • SSE-C diblokir secara default untuk bucket baru. Anda harus secara eksplisit mengaktifkan SSE-C menggunakan PutBucketEncryption API sebelum Anda dapat mengunggah objek dengan enkripsi SSE-C. Untuk informasi selengkapnya, lihat Memblokir atau membuka blokir SSE-C untuk bucket tujuan umum.