View a markdown version of this page

Creazione di policy di protezione dei dati di Amazon SNS per proteggere i dati dei messaggi utilizzando l'SDK - Amazon Simple Notification Service

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à.

Creazione di policy di protezione dei dati di Amazon SNS per proteggere i dati dei messaggi utilizzando l'SDK

Importante

La protezione dei dati dei messaggi Amazon SNS non è più disponibile per i nuovi clienti. Per ulteriori informazioni e indicazioni sulle alternative, consulta Amazon SNS Message Data Protection Availability Change.

Il numero e le dimensioni delle risorse Amazon SNS in un AWS account sono limitati. Per ulteriori informazioni, consulta Endpoint e quote di Amazon Simple Notification Service.

Creazione di politiche di protezione dei dati utilizzando l'SDK AWS

Crea una policy di protezione dei dati di Amazon SNS utilizzando l' AWS SDK.

Per creare una politica di protezione dei dati insieme a un argomento Amazon SNS (AWS SDK)

Usa le seguenti opzioni per creare una nuova policy di protezione dei dati in combinazione con un argomento standard di Amazon SNS:

Java
/** * For information regarding CreateTopic see this documentation topic: * * https://docs.aws.amazon.com/code-samples/latest/catalog/javav2-sns-src-main-java-com-example-sns-CreateTopic.java.html */ public static String createSNSTopicWithDataProtectionPolicy(SnsClient snsClient, String topicName, String dataProtectionPolicy) { try { CreateTopicRequest request = CreateTopicRequest.builder() .name(topicName) .dataProtectionPolicy(dataProtectionPolicy) .build(); CreateTopicResponse result = snsClient.createTopic(request); return result.topicArn(); } catch (SnsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; }
JavaScript
// Import required AWS SDK clients and commands for Node.js import {CreateTopicCommand } from "@aws-sdk/client-sns"; import {snsClient } from "./libs/snsClient.js"; // Set the parameters const params = { Name: "TOPIC_NAME", DataProtectionPolicy: "DATA_PROTECTION_POLICY" }; const run = async () => { try { const data = await snsClient.send(new CreateTopicCommand(params)); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; run();
Per creare o recuperare una policy di protezione dei dati per un argomento AWS esistente di Amazon SNS (SDK)

Usa le seguenti opzioni per creare o recuperare una nuova policy di protezione dei dati in combinazione con un argomento standard di Amazon SNS:

Java
public static void putDataProtectionPolicy(SnsClient snsClient, String topicName, String dataProtectionPolicy) { try { PutDataProtectionPolicyRequest request = PutDataProtectionPolicyRequest.builder() .resourceArn(topicName) .dataProtectionPolicy(dataProtectionPolicy) .build(); PutDataProtectionPolicyResponse result = snsClient.putDataProtectionPolicy(request); System.out.println("\n\nStatus was " + result.sdkHttpResponse().statusCode() + "\n\nTopic " + request.resourceArn() + " DataProtectionPolicy " + request.dataProtectionPolicy()); } catch (SnsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } } public static void getDataProtectionPolicy(SnsClient snsClient, String topicName) { try { GetDataProtectionPolicyRequest request = GetDataProtectionPolicyRequest.builder() .resourceArn(topicName) .build(); GetDataProtectionPolicyResponse result = snsClient.getDataProtectionPolicy(request); System.out.println("\n\nStatus is " + result.sdkHttpResponse().statusCode() + "\n\nDataProtectionPolicy: \n\n" + result.dataProtectionPolicy()); } catch (SnsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
JavaScript
// Import required AWS SDK clients and commands for Node.js import {PutDataProtectionPolicyCommand, GetDataProtectionPolicyCommand } from "@aws-sdk/client-sns"; import {snsClient } from "./libs/snsClient.js"; // Set the parameters const putParams = { ResourceArn: "TOPIC_ARN", DataProtectionPolicy: "DATA_PROTECTION_POLICY" }; const runPut = async () => { try { const data = await snsClient.send(new PutDataProtectionPolicyCommand(putParams)); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; runPut(); // Set the parameters const getParams = { ResourceArn: "TOPIC_ARN" }; const runGet = async () => { try { const data = await snsClient.send(new GetDataProtectionPolicyCommand(getParams)); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; runGet();