Configure permissões para trabalhar com fluxos do CDC no Amazon Keyspaces - Amazon Keyspaces (para Apache Cassandra)

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configure permissões para trabalhar com fluxos do CDC no Amazon Keyspaces

Para habilitar fluxos do CDC, o diretor, por exemplo, um usuário ou uma função do IAM, precisa das seguintes permissões.

Para obter mais informações sobre AWS Identity and Access Management, consulteAWS Identity and Access Management para Amazon Keyspaces.

Permissões para habilitar um fluxo CDC para uma tabela

Para habilitar um stream de CDC para uma tabela do Amazon Keyspaces, o principal primeiro precisa de permissões para criar uma tabela e, em segundo lugar, de permissões para criar a função vinculada AWSService RoleForAmazonKeyspaces ao serviço CDC. O Amazon Keyspaces usa a função vinculada ao serviço para publicar CloudWatch métricas em sua conta em seu nome.

A política do IAM a seguir é um exemplo disso.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ // Enable CDC stream during table creation "cassandra:Create", "cassandra:CreateMultiRegionResource", // Enable CDC stream after creation "cassandra:Alter", "cassandra:AlterMultiRegionResource" ], "Resource":[ "arn:aws:cassandra:aws-region:555555555555:/keyspace/my_keyspace/*", "arn:aws:cassandra:aws-region:555555555555:/keyspace/system*" ] }, { "Sid": "KeyspacesCDCServiceLinkedRole", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/cassandra-streams.amazonaws.com/AWSServiceRoleForAmazonKeyspacesCDC", "Condition": { "StringLike": { "iam:AWSServiceName": "cassandra-streams.amazonaws.com" } } } ] }

Para desativar um stream, somente ALTER TABLE permissões são necessárias.

Permissões para visualizar um stream do CDC

Para visualizar ou listar fluxos do CDC, o diretor precisa de permissões de leitura para o espaço de teclas do sistema. Para obter mais informações, consulte system_schema_mcs.

A política do IAM a seguir é um exemplo disso.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"cassandra:Select", "Resource":[ "arn:aws:cassandra:aws-region:111122223333:/keyspace/system*" ] } ] }

Para visualizar ou listar streams do CDC com a API AWS CLI ou Amazon Keyspaces, o diretor precisa de permissões para as ações e. cassandra:ListStreams cassandra:GetStream

A política do IAM a seguir é um exemplo disso.

{ "Effect": "Allow", "Action": [ "cassandra:Select", "cassandra:ListStreams", "cassandra:GetStream" ], "Resource": "*" }

Permissões para ler um fluxo do CDC

Para ler fluxos do CDC, o diretor precisa das seguintes permissões.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:GetStream", "cassandra:GetShardIterator", "cassandra:GetRecords" ], "Resource":[ // CDC Stream ARN "arn:aws:cassandra:aws-region:111122223333:/keyspace/my_keyspace/table/my_table/stream/stream_label" ] } ] }

Permissões para processar streams CDC do Amazon Keyspaces com a Kinesis Client Library (KCL)

Para processar streams CDC do Amazon Keyspaces com a KCL, o diretor do IAM precisa das seguintes permissões.

  • Amazon Keyspaces— Acesso somente para leitura a um stream CDC especificado do Amazon Keyspaces.

  • DynamoDB— Permissões para criar shard lease tabelas, acesso de leitura e gravação às tabelas e acesso de leitura ao índice, conforme necessário para o processamento do fluxo KCL.

  • CloudWatch— Permissões para publicar dados métricos do processamento de streams CDC do Amazon Keyspaces com KCL no namespace do seu aplicativo cliente KCL em sua conta. CloudWatch Para obter mais informações sobre monitoramento, consulte Monitorar a biblioteca cliente do Kinesis com a Amazon. CloudWatch

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:GetStream", "cassandra:GetShardIterator", "cassandra:GetRecords" ], "Resource":[ "arn:aws:cassandra:aws-region:111122223333:/keyspace/my_keyspace/table/my_table/stream/stream_label" ] }, { "Effect":"Allow", "Action":[ "dynamodb:CreateTable", "dynamodb:DescribeTable", "dynamodb:UpdateTable", "dynamodb:GetItem", "dynamodb:UpdateItem", "dynamodb:PutItem", "dynamodb:DeleteItem", "dynamodb:Scan" ], "Resource":[ "arn:aws:dynamodb:aws-region:111122223333: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:aws-region:111122223333:table/KCL_APPLICATION_NAME-WorkerMetricStats", "arn:aws:dynamodb:aws-region:111122223333:table/KCL_APPLICATION_NAME-CoordinatorState" ] }, { "Effect":"Allow", "Action":[ "dynamodb:Query" ], "Resource":[ "arn:aws:dynamodb:aws-region:111122223333:table/KCL_APPLICATION_NAME/index/*" ] }, { "Effect":"Allow", "Action":[ "cloudwatch:PutMetricData" ], "Resource":"*" } ] }