

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

# Permissões de sincronização offset de grupos de consumidores
<a name="msk-replicator-perms-consumer-group-sync"></a>

Quando `synchroniseConsumerGroupOffsets` ativado (o padrão), o replicador traduz os deslocamentos do grupo de consumidores do cluster de origem e os grava no cluster de destino. Com esse recurso ativado, os consumidores podem voltar da posição correta após o failover.

Dois modos de sincronização estão disponíveis: `LEGACY` (o padrão) `ENHANCED` e. No modo LEGACY, o replicador sincroniza os deslocamentos quando os produtores gravam no cluster de origem. No modo ENHANCED, o replicador sincroniza os offsets, independentemente de onde os produtores escrevem. O modo ENHANCED requer replicação bidirecional. Os dois modos usam as mesmas permissões do IAM.

**nota**  
Os tópicos internos dos quais o modo AVANÇADO depende (`mskr-offset-syncs.*`e`*.checkpoints.internal`) já estão cobertos pelo tópico permissões de replicação em ambos os clusters.

As declarações a seguir adicionam permissões específicas para sincronização offset de grupos de consumidores. Como a sincronização offset depende da replicação de dados, algumas permissões se sobrepõem à política de replicação do tópico.

## Política do IAM da função de execução do serviço (clusters MSK)
<a name="msk-replicator-perms-consumer-group-sync-iam"></a>

**Cluster de origem**  
A função de execução do serviço deve ter permissão para descrever grupos de consumidores e os tópicos que eles consomem na fonte.

```
[
    {
        "Sid": "SourceGroupPermissions",
        "Effect": "Allow",
        "Action": [
            "kafka-cluster:DescribeGroup"
        ],
        "Resource": [
            "arn:aws:kafka:${region}:${account}:group/${SourceClusterName}/${SourceClusterUUID}/${consumerGroupPattern}"
        ]
    },
    {
        "Sid": "SourceUserTopicPermissions",
        "Effect": "Allow",
        "Action": [
            "kafka-cluster:DescribeTopic"
        ],
        "Resource": [
            "arn:aws:kafka:${region}:${account}:topic/${SourceClusterName}/${SourceClusterUUID}/${topicsConsumedByGroup}"
        ]
    }
]
```

**Cluster de destino**  
A função de execução do serviço deve ter permissão para descrever os tópicos replicados e alterar os grupos de consumidores no destino para que as compensações traduzidas possam ser confirmadas.

```
[
    {
        "Sid": "TargetCheckpointTopicPermissions",
        "Effect": "Allow",
        "Action": [
            "kafka-cluster:DescribeTopic"
        ],
        "Resource": [
            "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/${replicatedTopicPattern}"
        ]
    },
    {
        "Sid": "TargetCheckpointGroupPermissions",
        "Effect": "Allow",
        "Action": [
            "kafka-cluster:AlterGroup",
            "kafka-cluster:DescribeGroup"
        ],
        "Resource": [
            "arn:aws:kafka:${region}:${account}:group/${TargetClusterName}/${TargetClusterUUID}/${consumerGroupPattern}"
        ]
    }
]
```

Substitua os espaços reservados nas declarações anteriores da seguinte forma:
+ `${consumerGroupPattern}`Substitua pelo nome ou padrão do grupo de consumidores configurado para replicação (por exemplo,`my-app-group-*`).
+ `${topicsConsumedByGroup}`Substitua pelo padrão de tópico que os grupos de consumidores leram na fonte.
+ `${replicatedTopicPattern}`Substitua pelo padrão de tópico replicado correspondente no destino (`*.${topicPattern}`para nomenclatura PREFIXADA ou `${topicPattern}` para nomenclatura IDÊNTICA).

## ACLs do Kafka (clusters não MSK)
<a name="msk-replicator-perms-consumer-group-sync-acls"></a>

**Non-MSK como fonte**  
Quando a origem é um cluster não MSK, a sincronização de deslocamento de grupos de consumidores exige as seguintes ACLs.


| Recurso | Tipo | Tipo de padrão | Operation | Finalidade | 
| --- | --- | --- | --- | --- | 
| `${consumerGroupPattern}` | Group (Grupo) | LITERAL ou PREFIXADO | Descrever | Leia as compensações confirmadas () OffsetFetch | 
| `${topicsConsumedByGroup}` | Tópico | LITERAL ou PREFIXADO | Descrever | Metadados de tópicos para tradução offset | 

**Non-MSK como alvo**  
Quando o destino é um cluster não MSK, a sincronização de deslocamento de grupos de consumidores exige as seguintes ACLs.


| Recurso | Tipo | Tipo de padrão | Operation | Finalidade | 
| --- | --- | --- | --- | --- | 
| `${replicatedTopicPattern}` | Tópico | LITERAL ou PREFIXADO | Descrever | Deslocamento da extremidade do registro () ListOffsets | 
| `${consumerGroupPattern}` | Group (Grupo) | LITERAL ou PREFIXADO | Descrever | FindCoordinator, DescribeGroup | 
| `${consumerGroupPattern}` | Group (Grupo) | LITERAL ou PREFIXADO | Ler | Confirmar compensações traduzidas () OffsetCommit | 