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 IAM richieste per le applicazioni consumer KCL
Devi aggiungere le seguenti autorizzazioni al ruolo o all'utente IAM associato alla tua applicazione consumer KCL.
Le migliori pratiche di sicurezza per AWS imporre l'uso di autorizzazioni granulari per controllare l'accesso a diverse risorse. AWS Identity and Access Management (IAM) consente di gestire gli utenti e le autorizzazioni degli utenti in. AWS Una policy IAM elenca in modo esplicito le operazioni consentite e le risorse per le quali sono applicabili le operazioni.
La tabella seguente mostra le autorizzazioni IAM minime generalmente richieste per le applicazioni consumer KCL:
Servizio | Operazioni | Risorse () ARNs | Scopo |
---|---|---|---|
Flusso di dati Amazon Kinesis |
|
Flusso di dati Kinesis da cui l'applicazione KCL elaborerà i dati.
|
Prima di leggere i record, il consumer verifica se il flusso di dati esiste, è attivo e contiene il flusso di dati. Registra i consumatori su uno shard. |
Flusso di dati Amazon Kinesis |
|
Flusso di dati Kinesis da cui l'applicazione KCL elaborerà i dati.
|
Legge record da uno shard. |
Flusso di dati Amazon Kinesis |
|
Flusso di dati Kinesis da cui l'applicazione KCL elaborerà i dati. Aggiungi questa azione solo se utilizzi utenti Enhanced Fan-Out (EFO).
|
Si abbona a uno shard per consumatori Enhanced Fan-out (EFO). |
Amazon DynamoDB |
|
Tabella di leasing (tabella dei metadati) in DynamoDB creata da KCL.
|
Queste azioni sono necessarie per consentire a KCL di gestire la tabella di lease creata in DynamoDB. |
Amazon DynamoDB |
|
Metriche dei lavoratori e tabella dello stato del coordinatore (tabelle di metadati in DynamoDB) creata da KCL.
|
Queste azioni sono necessarie per consentire a KCL di gestire le metriche dei lavoratori e le tabelle dei metadati dello stato del coordinatore in DynamoDB. |
Amazon DynamoDB |
|
Indice secondario globale nella tabella dei contratti di locazione.
|
Questa azione è necessaria affinché KCL legga l'indice secondario globale della tabella di lease creata in DynamoDB. |
Amazon CloudWatch |
|
* |
Carica le metriche CloudWatch che sono utili per monitorare l'applicazione. L'asterisco (*) viene utilizzato perché non esiste una risorsa specifica in CloudWatch cui viene richiamata l'azione. |
Nota
Sostituisci «region», «account»StreamName, "» e "KCLApplicationName» ARNs con il tuo Account AWS numero Regione AWS, il nome del flusso di dati Kinesis e il nome dell'applicazione KCL rispettivamente. KCL 3.x crea altre due tabelle di metadati in DynamoDB. Per informazioni dettagliate sulle tabelle di metadati DynamoDB create da KCL, vedere. Tabelle di metadati DynamoDB e bilanciamento del carico in KCL Se utilizzi configurazioni per personalizzare i nomi delle tabelle di metadati create da KCL, usa i nomi di tabella specificati anziché il nome dell'applicazione KCL.
Di seguito è riportato un esempio di documento politico per un'applicazione consumer KCL.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "kinesis:DescribeStreamSummary", "kinesis:RegisterStreamConsumer", "kinesis:GetRecords", "kinesis:GetShardIterator", "kinesis:ListShards" ], "Resource": "arn:aws:kinesis:REGION:ACCOUNT_ID:stream/STREAM_NAME" }, { "Effect": "Allow", "Action": [ "kinesis:SubscribeToShard", "kinesis:DescribeStreamConsumer" ], "Resource": "arn:aws:kinesis:REGION:ACCOUNT_ID:stream/STREAM_NAME/consumer/*" }, { "Effect": "Allow", "Action": [ "dynamodb:CreateTable", "dynamodb:DescribeTable", "dynamodb:UpdateTable", "dynamodb:GetItem", "dynamodb:UpdateItem", "dynamodb:PutItem", "dynamodb:DeleteItem", "dynamodb:Scan" ], "Resource": [ "arn:aws:dynamodb:REGION:ACCOUNT_ID:table/KCL_APPLICATION_NAME" ] }, { "Effect": "Allow", "Action": [ "dynamodb:CreateTable", "dynamodb:DescribeTable", "dynamodb:GetItem", "dynamodb:UpdateItem", "dynamodb:PutItem", "dynamodb:DeleteItem", "dynamodb:Scan" ], "Resource": [ "arn:aws:dynamodb:REGION:ACCOUNT_ID:table/KCL_APPLICATION_NAME-WorkerMetricStats", "arn:aws:dynamodb:REGION:ACCOUNT_ID:table/KCL_APPLICATION_NAME-CoordinatorState" ] }, { "Effect": "Allow", "Action": [ "dynamodb:Query" ], "Resource": [ "arn:aws:dynamodb:REGION:ACCOUNT_ID:table/KCL_APPLICATION_NAME/index/*" ] }, { "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*" } ] }
Prima di utilizzare questa politica di esempio, controlla i seguenti elementi:
-
Sostituisci REGION con il tuo Regione AWS (ad esempio, us-east-1).
-
Sostituisci ACCOUNT_ID con il tuo ID. Account AWS
-
Sostituisci STREAM_NAME con il nome del tuo flusso di dati Kinesis.
-
Sostituisci CONSUMER_NAME con il nome del tuo consumatore, in genere il nome dell'applicazione quando usi KCL.
-
Sostituisci KCL_APPLICATION_NAME con il nome della tua applicazione KCL.