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à.
IAMautorizzazioni necessarie per le applicazioni destinate ai consumatori KCL
È necessario aggiungere le seguenti autorizzazioni al IAM ruolo o all'utente associato all'applicazione KCL consumer.
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 IAM policy elenca in modo esplicito le azioni consentite e le risorse a cui tali azioni sono applicabili.
La tabella seguente mostra le IAM autorizzazioni minime generalmente richieste per le applicazioni KCL consumer:
Servizio | Azioni | Risorse () ARNs | Scopo |
---|---|---|---|
Flusso di dati Amazon Kinesis |
|
Flusso di dati Kinesis da cui l'KCLapplicazione 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'KCLapplicazione elaborerà i dati.
|
Legge record da uno shard. |
Flusso di dati Amazon Kinesis |
|
Flusso di dati Kinesis da cui l'KCLapplicazione elaborerà i dati. Aggiungi questa azione solo se utilizzi i consumatori Enhanced fan-out ()EFO.
|
Si iscrive a uno shard per i consumatori di Enhanced fan-out (). EFO |
Amazon DynamoDB |
|
Tabella di leasing (tabella di metadati in DynamoDB creata da. KCL
|
Queste azioni sono necessarie per KCL gestire la tabella di lease creata in DynamoDB. |
Amazon DynamoDB |
|
Tabella delle metriche dei lavoratori e dello stato del coordinatore (tabelle di metadati in DynamoDB) creata da. KCL
|
Queste azioni sono necessarie per KCL 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 KCL per leggere l'indice secondario globale della tabella di lease creata in DynamoDB. |
Amazon CloudWatch |
|
* |
Carica metriche utili per monitorare l'applicazione. CloudWatch 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 KCL dell'applicazione rispettivamente. KCL3.x crea altre due tabelle di metadati in DynamoDB. Per informazioni dettagliate sulle tabelle di metadati DynamoDB create da, vedere. KCL Tabelle di metadati DynamoDB e bilanciamento del carico in KCL Se utilizzi configurazioni per personalizzare i nomi delle tabelle di metadati create daKCL, utilizza i nomi di tabella specificati anziché il nome dell'applicazione. KCL
Di seguito è riportato un esempio di documento di policy per un'applicazione KCL consumer.
{ "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 consumatore, in genere il nome dell'applicazione quando si utilizzaKCL.
-
Sostituisci KCL APPLICATION _ _ NAME con il nome dell'KCLapplicazione.