Além do exemplo de código a seguir, você pode usar a classe de utilitário CloudFrontUrlSigner
no AWS SDK for Java (versão 1) para criar signed URLs do CloudFront.
Para ver mais exemplos, consulte Crie URLs e cookies assinados usando um SDK da AWS na Biblioteca de códigos de exemplos de códigos do SDK da AWS.
nota
Criar um signed URL é somente uma parte do processo de fornecimento de conteúdo privado com o CloudFront. Para obter mais informações sobre o todo o processo, consulte Usar URLs assinados.
O exemplo a seguir mostra como criar um signed URL do CloudFront.
exemplo Política Java e métodos de criptografia de assinatura
package org.example;
import java.time.Instant;
import java.time.temporal.ChronoUnit;
import software.amazon.awssdk.services.cloudfront.CloudFrontUtilities;
import software.amazon.awssdk.services.cloudfront.model.CannedSignerRequest;
import software.amazon.awssdk.services.cloudfront.url.SignedUrl;
public class Main {
public static void main(String[] args) throws Exception {
CloudFrontUtilities cloudFrontUtilities = CloudFrontUtilities.create();
Instant expirationDate = Instant.now().plus(7, ChronoUnit.DAYS);
String resourceUrl = "https://a1b2c3d4e5f6g7.cloudfront.net";
String keyPairId = "K1UA3WV15I7JSD";
CannedSignerRequest cannedRequest = CannedSignerRequest.builder()
.resourceUrl(resourceUrl)
.privateKey(new java.io.File("/path/to/private_key.pem").toPath())
.keyPairId(keyPairId)
.expirationDate(expirationDate)
.build();
SignedUrl signedUrl = cloudFrontUtilities.getSignedUrlWithCannedPolicy(cannedRequest);
String url = signedUrl.url();
System.out.println(url);
}
}
Consulte também: