Mengambil AWS Secrets Manager rahasia dalam aplikasi Java - AWS Secrets Manager

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

Mengambil AWS Secrets Manager rahasia dalam aplikasi Java

Ketika Anda mengambil rahasia, Anda dapat menggunakan Secrets Manager komponen caching berbasis Java untuk cache untuk digunakan di masa mendatang. Mengambil rahasia yang di-cache lebih cepat daripada mengambilnya dari Secrets Manager. Karena ada biaya untuk memanggil Secrets Manager API, menggunakan cache dapat mengurangi biaya Anda. Untuk semua cara Anda dapat mengambil rahasia, lihatAmbil rahasia.

Kebijakan cache adalah Least Recently Used (LRU), jadi ketika cache harus membuang rahasia, ia membuang rahasia yang paling jarang digunakan. Secara default, cache menyegarkan rahasia setiap jam. Anda dapat mengonfigurasi seberapa sering rahasia disegarkan dalam cache, dan Anda dapat menghubungkan ke pengambilan rahasia untuk menambahkan lebih banyak fungsionalitas.

Cache tidak memaksa pengumpulan sampah setelah referensi cache dibebaskan. Implementasi cache tidak termasuk pembatalan cache. Implementasi cache difokuskan di sekitar cache itu sendiri, dan tidak dikeraskan atau difokuskan keamanan. Jika Anda memerlukan keamanan tambahan seperti mengenkripsi item dalam cache, gunakan antarmuka dan metode abstrak yang disediakan.

Untuk menggunakan komponen tersebut, Anda harus memiliki yang berikut:

  • Java 8 atau lingkungan pengembangan yang lebih tinggi. Lihat Unduhan Java SE di situs web Oracle.

  • AWSSDK 1.x untuk Java. Anda dapat menggunakan kedua versi AWS SDK for Java dalam proyek Anda. Untuk informasi selengkapnya, lihat What is What is a What is a Java 1.x and 2.x. side-by-side

Untuk mengunduh kode sumber, lihat Secrets Manager komponen klien caching berbasis Java pada. GitHub

Untuk menambahkan komponen ke proyek Anda, dalam file pom.xml Maven Anda, sertakan dependensi berikut. Untuk informasi selengkapnya tentang Maven, lihat Panduan Memulai di situs Apache Maven Project.

<dependency> <groupId>com.amazonaws.secretsmanager</groupId> <artifactId>aws-secretsmanager-caching-java</artifactId> <version>1.0.2</version> </dependency>

Izin yang diperlukan:

  • secretsmanager:DescribeSecret

  • secretsmanager:GetSecretValue

Untuk informasi selengkapnya, lihat Referensi izin.

contoh Ambil rahasia

Contoh kode berikut menunjukkan fungsi Lambda yang mengambil string rahasia. Ini mengikuti praktik terbaik untuk membuat instance cache di luar penangan fungsi, sehingga tidak terus memanggil API jika Anda memanggil fungsi Lambda lagi.

package com.amazonaws.secretsmanager.caching.examples; import com.amazonaws.services.lambda.runtime.Context; import com.amazonaws.services.lambda.runtime.RequestHandler; import com.amazonaws.services.lambda.runtime.LambdaLogger; import com.amazonaws.secretsmanager.caching.SecretCache; public class SampleClass implements RequestHandler<String, String> { private final SecretCache cache = new SecretCache(); @Override public String handleRequest(String secretId, Context context) { final String secret = cache.getSecretString(secretId); // Use the secret, return success; } }