Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzare GetBucketEncryptioncon un AWS SDK
Il seguente esempio di codice mostra come utilizzareGetBucketEncryption.
- Java
-
- SDK per Java 2.x
-
Ottiene la configurazione della crittografia di un bucket di directory.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.services.s3.model.GetBucketEncryptionRequest;
import software.amazon.awssdk.services.s3.model.GetBucketEncryptionResponse;
import software.amazon.awssdk.services.s3.model.S3Exception;
import software.amazon.awssdk.services.s3.model.ServerSideEncryptionRule;
import static com.example.s3.util.S3DirectoryBucketUtils.createDirectoryBucket;
import static com.example.s3.util.S3DirectoryBucketUtils.createS3Client;
import static com.example.s3.util.S3DirectoryBucketUtils.deleteDirectoryBucket;
/**
* Retrieves the encryption configuration for an S3 directory bucket.
*
* @param s3Client The S3 client used to interact with S3
* @param bucketName The name of the directory bucket
* @return The type of server-side encryption applied to the bucket (e.g.,
* AES256, aws:kms)
*/
public static String getDirectoryBucketEncryption(S3Client s3Client, String bucketName) {
try {
// Create a GetBucketEncryptionRequest
GetBucketEncryptionRequest getRequest = GetBucketEncryptionRequest.builder()
.bucket(bucketName)
.build();
// Retrieve the bucket encryption configuration
GetBucketEncryptionResponse response = s3Client.getBucketEncryption(getRequest);
ServerSideEncryptionRule rule = response.serverSideEncryptionConfiguration().rules().get(0);
String encryptionType = rule.applyServerSideEncryptionByDefault().sseAlgorithmAsString();
logger.info("Bucket encryption algorithm: {}", encryptionType);
logger.info("KMS Customer Managed Key ID: {}", rule.applyServerSideEncryptionByDefault().kmsMasterKeyID());
logger.info("Bucket Key Enabled: {}", rule.bucketKeyEnabled());
return encryptionType;
} catch (S3Exception e) {
logger.error("Failed to get bucket encryption: {} - Error code: {}", e.awsErrorDetails().errorMessage(),
e.awsErrorDetails().errorCode(), e);
throw e;
}
}
Per un elenco completo delle guide per sviluppatori AWS SDK e degli esempi di codice, consultaSviluppo con Amazon S3 utilizzando AWS SDK. Questo argomento include anche informazioni su come iniziare e dettagli sulle versioni precedenti dell’SDK.