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à.
Autorizzazioni SER aggiuntive per MTL SASL/SCRAM e chiavi gestite dal SASL/OAUTHBEARER cliente
La policy AWSMSKReplicatorExecutionRole gestita copre le autorizzazioni di cluster, topic e consumer group per l'autenticazione IAM. Quando esegui la replica su o da un cluster che utilizza SASL/SCRAM l'autenticazione MTL o SASL/OAUTHBEARER (OAuth) (ad esempio, durante la migrazione da un cluster Apache Kafka autogestito) o quando il tuo segreto viene crittografato con una chiave gestita dal cliente (CMK), devi allegare autorizzazioni in linea aggiuntive al ruolo di esecuzione del servizio.
Utilizza gli snippet riportati di seguito in aggiunta alla policy gestita. Scegli lo scenario che corrisponde alla tua configurazione.
SASL/SCRAM segreto (con o senza segreto TLS root CA)
Concede al SER l'autorizzazione a leggere le credenziali SCRAM e (facoltativamente) il certificato CA privato da. AWS Secrets Manager Sostituiscilo <saslSecretArn> con il tuo ARN segreto SCRAM e <privateCaCertSecretArn> con il segreto che contiene il certificato CA (ometti il secondo ARN se usi un certificato pubblicamente affidabile).
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SecretsManagerPermissions", "Effect": "Allow", "Action": [ "secretsmanager:GetResourcePolicy", "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecretVersionIds" ], "Resource": [ "<saslSecretArn>", "<privateCaCertSecretArn>" ] } ] }
Segreto MTLS (con o senza segreto CA root TLS)
Concede al SER il permesso di leggere il certificato e la chiave privata del client. AWS Secrets Manager Sostituiscilo <mtlsSecretArn> con l'ARN del tuo MTL segreto e <privateCaCertSecretArn> con il segreto che contiene il certificato CA del server (ometti il secondo ARN se usi un certificato pubblicamente attendibile).
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SecretsManagerPermissions", "Effect": "Allow", "Action": [ "secretsmanager:GetResourcePolicy", "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecretVersionIds" ], "Resource": [ "<mtlsSecretArn>", "<privateCaCertSecretArn>" ] } ] }
SASL/OAUTHBEARER
Le autorizzazioni necessarie al SER dipendono dal meccanismo: SASL/OAUTHBEARER
Credenziali del cliente: concedi l'accesso in AWS Secrets Manager lettura al segreto che contiene
client_ide.client_secretAsserzione delle credenziali del titolare del JWT IAM e del cliente: concedi
sts:GetWebIdentityTokenin modo che il SER possa ottenere un JWT firmato per la propria identità. AWS Concedi anche l'accesso in AWS Secrets Manager lettura se fornisci un segreto opzionale.
Se il tuo IDP utilizza una CA privata, concedi anche l'accesso in AWS Secrets Manager lettura al segreto che contiene il certificato CA a tokenEndpointTlsCertificateArn cui fai riferimento. L'esempio seguente concede entrambi. Sostituiscilo <oauthSecretArn> con il tuo ARN segreto, <idpCaCertSecretArn> con l'ARN segreto del certificato CA e <accountID> con il tuo ID. Account AWS Ometti completamente la SecretsManagerPermissions dichiarazione se utilizzi il meccanismo di asserzione delle credenziali del portatore o del cliente IAM JWT senza un segreto e il tuo IDP utilizza un certificato pubblicamente attendibile; ometti la dichiarazione se utilizzi il meccanismo delle credenziali del StsPermissions client.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SecretsManagerPermissions", "Effect": "Allow", "Action": [ "secretsmanager:GetResourcePolicy", "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecretVersionIds" ], "Resource": [ "<oauthSecretArn>", "<idpCaCertSecretArn>" ] }, { "Sid": "StsPermissions", "Effect": "Allow", "Action": "sts:GetWebIdentityToken", "Resource": "arn:aws:sts::<accountID>:self" } ] }
Segreto crittografato con una chiave gestita dal cliente
Se il segreto è crittografato con una CMK anziché con la chiave AWS gestita, kms:Decrypt concedi anche la CMK. Sostituiscilo <customerManagedKeyArn> con l'ARN CMK.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SecretsManagerPermissions", "Effect": "Allow", "Action": [ "secretsmanager:GetResourcePolicy", "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecretVersionIds" ], "Resource": [ "<secretArn>", "<privateCaCertSecretArn>" ] }, { "Sid": "KmsPermissions", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": [ "<customerManagedKeyArn>" ] } ] }
Nota
Se si preferisce un ambito più ampio e coerente con le autorizzazioni del provider di configurazione MSK Connect, è possibile utilizzare arn:aws:secretsmanager:<region>:<accountID>:secret:AmazonMSK_* come modello di risorse anziché singoli ARN segreti.