Autenticazione con m TLS per l'acquisizione dello streaming Redshift da Amazon MSK - Amazon Redshift

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

Autenticazione con m TLS per l'acquisizione dello streaming Redshift da Amazon MSK

La sicurezza a livello di trasporto reciproco (mTLS) consente a un server di autenticare il client a cui invia informazioni e al client di autenticare il server. Il vantaggio dell'utilizzo di m TLS consiste nel fornire un'autenticazione affidabile per una varietà di casi d'uso in diverse applicazioni verticali del settore. Questi includono casi d'uso nei settori finanziario, commerciale, governativo e sanitario. In caso di inserimento dello streaming su Redshift, l'autenticazione avviene tra un server, in questo caso Amazon, e un cluster con provisioning di Amazon MSK Redshift o un gruppo di lavoro Amazon Redshift Serverless.

Questo argomento fornisce procedure ed esempi di SQL -command che mostrano come creare uno schema esterno che utilizza m TLS per l'autenticazione tra il client Redshift e il server Amazon. MSK I passaggi descritti in questo argomento completano la serie completa di passaggi per configurare l'importazione di streaming da Amazon. MSK Questi sono descritti in dettaglio all'indirizzo. Guida introduttiva all'acquisizione di streaming da Amazon Managed Streaming for Apache Kafka (Amazon) MSK

Prerequisiti per l'utilizzo di m TLS per l'ingestione dello streaming

Questa sezione fornisce i passaggi preliminari per l'utilizzo di m TLS per l'acquisizione di streaming con Amazon o AWS Certificate Manager con Amazon. SageMaker

  1. Come fase preliminare, è necessario disporre o creare un'autorità di certificazione privata (PCA), da utilizzare per emettere certificati che, tra le altre funzioni, consentono la comunicazione sicura attraverso canali di comunicazione sicuri. AWS Private Certificate Authority (Private CA) è un servizio disponibile che svolge questa funzione. Per ulteriori informazioni, vedere Creazione di una CA privata nella Guida AWS Private Certificate Authority per l'utente. In una fase successiva, emetti un certificato e lo alleghi al tuo MSK cluster Amazon per abilitare la comunicazione crittografata con Redshift.

  2. Crea un MSK cluster Amazon che supporti l'autenticazione client mtls. Per ulteriori informazioni sulla configurazione di un MSK cluster Amazon, consulta Creare un cluster che supporti l'autenticazione client nella Amazon Managed Streaming for Apache Kafka Developer Guide.

  3. Modifica le impostazioni di sicurezza per il MSK cluster Amazon, attivando l'autenticazione TLS client utilizzando AWS Certificate Manager (ACM) e selezionando AWS Private CA (PCA) che hai creato in precedenza. Per ulteriori informazioni, consulta Aggiornamento delle impostazioni di sicurezza di un cluster nella Amazon Managed Streaming for Apache Kafka Developer Guide.

Usare m TLS per l'ingestione di streaming con AWS Certificate Manager

La procedura seguente mostra come configurare m TLS per l'inserimento dello streaming da Redshift utilizzando AWS Certificate Manager (ACM) per l'archiviazione e la gestione dei certificati:

  1. Richiedi un certificato privato tramite. ACM Quando lo fai, seleziona quello PCA che hai creato nella sezione Prerequisiti come autorità di certificazione. ACMmemorizza il certificato firmato e la chiave privata allegata per comunicazioni sicure. Per ulteriori informazioni sulla gestione dei certificati conACM, vedere Emissione e gestione dei certificati nella Guida per l'AWS Certificate Manager utente.

  2. Per il IAM ruolo che utilizzi per gestire il tuo cluster Redshift o il gruppo di lavoro Amazon Redshift Serverless, allega l'autorizzazione all'esportazione del certificato, che è acm:. ExportCertificate Per ulteriori informazioni sulla configurazione IAM delle risorse necessarie per l'acquisizione di streaming con AmazonMSK, consulta. Configurazione IAM delle autorizzazioni ed esecuzione dell'importazione di streaming da Kafka Specificate lo stesso IAM ruolo nel passaggio successivo per creare lo schema esterno.

  3. Ottieni il broker bootstrap URI per il MSK cluster Amazon. Come ottenere il broker bootstrap URI è descritto in dettaglio in Come ottenere i broker bootstrap per un MSK cluster Amazon nella Amazon Managed Streaming for Apache Kafka Developer Guide.

  4. Esegui un SQL comando come il seguente esempio per creare uno schema esterno che mappa un flusso da un MSK cluster Amazon a uno schema esterno Redshift, utilizzando. mtls

    CREATE EXTERNAL SCHEMA my_schema FROM MSK IAM_ROLE 'arn:aws:iam::012345678901:role/my_role' AUTHENTICATION mtls URI 'b-1.myTestCluster.123z8u.c2.kafka.us-west-1.amazonaws.com:9094,b-2.myTestCluster.123z8u.c2.kafka.us-west-1.amazonaws.com:9094' AUTHENTICATION_ARN 'arn:aws:acm:Region:444455556666:certificate/certificate_ID';

    Parametri importanti:

    • IAM_ ROLE — Il IAM ruolo associato al cluster, per l'ingestione dello streaming.

    • URI— Il broker bootstrap URI per il MSK cluster Amazon. Tieni presente che la porta 9094 è specificata per la comunicazione con i broker per la crittografia. TLS

    • AUTHENTICATION_ ARN — Il certificatoARN. ACM ARNÈ disponibile nella ACM console quando si sceglie il certificato emesso.

Dopo aver eseguito questi passaggi di configurazione, è possibile creare una vista materializzata Redshift che faccia riferimento allo schema definito nell'esempio e quindi utilizzabile REFRESH MATERIALIZED VIEW per lo streaming dei dati. Questa procedura è descritta in dettaglio nella procedura introduttiva per lo streaming da Amazon in Guida introduttiva MSK allo streaming da Amazon Managed Streaming for Apache Kafka (). MSK

TLSUsare m per l'ingestione dello streaming con AWS Secrets Manager

Puoi configurare m TLS per l'acquisizione dello streaming di Redshift sfruttandolo AWS Secrets Manager per la gestione dei certificati, se non desideri fare riferimento al certificato in. ACM I passaggi seguenti descrivono come configurarlo.

  1. Crea una richiesta di firma del certificato e una chiave privata con lo strumento che preferisci. Quindi puoi utilizzare la richiesta di firma per generare un certificato firmato, utilizzando la stessa CA AWS privata (PCA) utilizzata per generare il certificato per il MSK cluster Amazon. Per ulteriori informazioni sull'emissione di un certificato, consulta IssueCertificatela sezione AWS Private Certificate Authority APIReference.

  2. Estrai il certificato usando AWS Private Certificate Authority. Per ulteriori informazioni, consulta Recupera un certificato privato> nella Guida per l'AWS Private Certificate Authority utente.

  3. Memorizza il certificato e la chiave privata generati nel passaggio precedente in. AWS Secrets Manager Scegli Other type of secret e usa il formato di testo semplice. Le coppie chiave-valore devono essere nel formato{"certificate":"<cert value>","privateKey":"<pkey value>"}, come nell'esempio seguente. Per ulteriori informazioni sulla creazione e la gestione di segreti in AWS Secrets Manager, consulta Creare e gestire segreti con AWS Secrets Manager nella Guida per l'AWS Secrets Manager utente.

    {"certificate":"-----BEGIN CERTIFICATE----- klhdslkfjahksgdfkgioeuyihbflahabhbdslv6akybeoiwv1hoaiusdhbahsbdi H4hAX8/eE96qCcjkpfT84EdvHzp6fC+/WwM0oXlwUEWlvfMCXNaG5D8SqRq3qA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- klhdslkfjahksgdfkgioeuyihbflahabhbdslv6akybeoiwv1hoaiusdhbahsbdi wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY -----END CERTIFICATE-----", "privateKey":"-----BEGIN PRIVATE KEY----- klhdslkfjahksgdfkgioeuyihbflahabhbdslv6akybeoiwv1hoaiusdhbahsbdi 7OD4m1dBEs3Fj++hDMH9rYRp99RqtCOf0EWOUe139KOilOsW+cyhAoc9Ci2+Jo/k 17u2N1iGILMQEZuCRtnJOkFYkw== -----END PRIVATE KEY-----"}
  4. In Redshift, esegui il SQL comando per creare lo schema esterno. Si utilizza il AUTHENTICATION tipomtls. È inoltre necessario specificare URI il MSK cluster Amazon e il secret ARN in AWS Secrets Manager.

    CREATE EXTERNAL SCHEMA my_schema FROM MSK IAM_ROLE 'arn:aws:iam::012345678901:role/my_role' AUTHENTICATION mtls URI 'b-1.myTestCluster.123z8u.c2.kafka.us-west-1.amazonaws.com:9094,b-2.myTestCluster.123z8u.c2.kafka.us-west-1.amazonaws.com:9094' SECRET_ARN 'arn:aws:secretsmanager:us-east-1:012345678910:secret:myMTLSSecret';

Parametri importanti:

  • IAM_ ROLE — Il IAM ruolo associato al cluster, per l'ingestione dello streaming.

  • URI— Il broker bootstrap URI per il MSK cluster Amazon. Tieni presente che la porta 9094 è specificata per la comunicazione con i broker per la crittografia. TLS

  • SECRET_ ARN — Il segreto ARN di Secrets Manager, contenente il certificato da utilizzare per mTLS.

Attivazione TLS dell'autenticazione m per uno schema esterno esistente

Se disponi di uno schema esterno esistente che utilizzi per l'acquisizione dello streaming e desideri implementare Mutual TLS for Authentication, puoi eseguire un comando come il seguente, che specifica m TLS authentication e il ACM certificato in. ARN ACM

ALTER EXTERNAL SCHEMA schema_name AUTHENTICATION mtls AUTHENTICATION_ARN 'arn:aws:acm:Region:444455556666:certificate/certificate_ID';

Oppure puoi specificare m TLS authentication, con riferimento al secret in. ARN AWS Secrets Manager

ALTER EXTERNAL SCHEMA schema_name AUTHENTICATION mtls SECRET_ARN 'arn:aws:secretsmanager:us-east-1:012345678910:secret:myMTLSSecret';