Políticas de permissões e ações suportadas
Este capítulo descreve o gerenciamento de permissões refinado para instâncias do DMS for Kafka. Se sua conta daHUAWEI CLOUD não exigir usuários individuais do IAM, pule este capítulo.
Por padrão, os novos usuários do IAM não têm permissões atribuídas. Você precisa adicionar um usuário a um ou mais grupos e anexar políticas de permissões ou funções a esses grupos. Os usuários herdam permissões dos grupos aos quais são adicionados e podem executar operações especificadas em serviços de nuvem com base nas permissões.
Você pode conceder permissões aos usuários usando funções e políticas. As funções são um tipo de mecanismo de autorização grosseiro que define permissões relacionadas às responsabilidades do usuário. As políticas definem permissões baseadas em API para operações em recursos específicos sob determinadas condições, permitindo um controle de acesso mais refinado e seguro dos recursos da nuvem.
A autorização baseada em políticas é útil se você deseja permitir ou negar o acesso a uma API.
Uma conta tem todas as permissões necessárias para chamar todas as API, mas os usuários do IAM devem receber as permissões para chamar as API necessárias. As permissões necessárias para chamar uma API são determinadas pelas ações suportadas pela API. Somente os usuários que receberam permissões que permitem as ações podem chamar a API com êxito. Por exemplo, se um usuário do IAM quiser consultar instâncias do Kafka usando uma API, o usuário deverá ter recebido permissões que permitam a ação dms:instance:create.
Ações suportadas
O DMS for Kafka fornece políticas definidas pelo sistema que podem ser usadas diretamente no IAM. Você também pode criar políticas personalizadas e usá-las para complementar políticas definidas pelo sistema, implementando um controle de acesso mais refinado. As operações suportadas pelas políticas são específicas das API. Seguem-se conceitos comuns relacionados com as políticas:
- Permissão: uma declaração em uma política que permite ou nega certas operações.
- As API: As API REST que podem ser chamadas por um usuário que recebeu permissões específicas.
- Ação: Operações específicas que são permitidas ou negadas.
- Projetos IAM ou projetos empresariais: Uma política personalizada pode ser aplicada a projetos do IAM ou projetos corporativos ou a ambos. As políticas que contêm ações para projetos do IAM e corporativos podem ser usadas e entrar em vigor para o IAM e o Enterprise Management. As políticas que contêm apenas ações para projetos do IAM podem ser usadas e só entram em vigor para o IAM. Para obter detalhes sobre as diferenças entre o IAM e os projetos empresariais, consulte Quais são as diferenças entre o IAM e o Enterprise Management
O DMS for Kafka oferece suporte às seguintes ações que podem ser definidas em políticas personalizadas. As permissões devem ser obtidas antes de chamar as API do DMS. Para obter detalhes sobre como obter permissões, visite o centro de ajuda de Identity and Access Management.
Permissões |
As API |
Ações |
Projetos de IAM |
Projetos corporativos |
---|---|---|---|---|
Criação de uma instância |
POST /v2/{project_id}/instances |
dms:instance:create |
√ |
√ |
Consulta de uma instância |
GET /v2/{project_id}/instances/{instance_id} |
dms:instance:get |
√ |
√ |
Modificação das informações da instância |
PUT /v2/{project_id}/instances/{instance_id} |
dms:instance:modify |
√ |
√ |
Exclusão das instâncias |
DELETE /v2/{project_id}/instances/{instance_id} |
dms:instance:delete |
√ |
√ |
Listagem de todas as instâncias |
GET /v2/{project_id}/instances |
dms:instance:list |
√ |
√ |
Reiniciação ou exclusão das instâncias em lote |
POST /v2/{project_id}/instances/action |
Restart: dms:instance:modifyStatus Delete: dms:instance:delete |
√ |
√ |
Redefinição da senha do Kafka Manager |
PUT /v2/{project_id}/instances/{instance_id}/kafka-manager-password |
dms:instance:resetAuthInfo |
√ |
√ |
Redefinição da senha |
POST /v2/{project_id}/instances/{instance_id}/password |
dms:instance:resetAuthInfo |
√ |
√ |
Reiniciação do gerenciador de Kafka |
PUT /v2/{project_id}/instances/{instance_id}/restart-kafka-manager |
dms:instance:modifyStatus |
√ |
√ |
Configuração da criação automática dos tópicos |
POST /v2/{project_id}/instances/{instance_id}/autotopic |
dms:instance:modify |
√ |
√ |
Modificação do endereço IP privado para acesso entre os VPC |
POST /v2/{project_id}/instances/{instance_id}/crossvpc/modify |
dms:instance:modify |
√ |
√ |
Criação de um conector de despejo para uma instância |
POST /v2/{project_id}/instances/{instance_id}/connector |
dms:instance:connector |
√ |
√ |
Criação das tarefas de despejo |
POST /v2/{project_id}/connectors/{connector_id}/sink-tasks |
dms:instance:createConnectorSinkTask |
√ |
√ |
Exclusão de uma tarefa de despejo |
POST /v2/{project_id}/connectors/{connector_id}/sink-tasks/{task_id} |
dms:instance:deleteConnectorSinkTask |
√ |
√ |
Listagem de tarefas de despejo |
GET /v2/{project_id}/connectors/{connector_id}/sink-tasks |
dms:instance:listConnectorSinkTask |
√ |
√ |
Consulta de uma tarefa de despejo |
GET /v2/{project_id}/connectors/{connector_id}/sink-tasks/{task_id} |
dms:instance:getConnectorSinkTask |
√ |
√ |
Modificação das cotas de tarefas de despejo |
PUT /v2/{project_id}/connectors/{connector_id}/sink-tasks |
dms:instance:createConnectorSinkTask |
√ |
√ |
Modificação das especificações de instância |
POST /v2/{project_id}/instances/{instance_id}/extend |
dms:instance:scale |
√ |
√ |
Exclusão dos tópicos de uma instância de Kafka em lote |
POST /v2/{project_id}/instances/{instance_id}/topics/delete |
dms:instance:modify |
√ |
√ |
Criação de um tópico para uma instância de Kafka |
POST /v2/{project_id}/instances/{instance_id}/topics |
dms:instance:modify |
√ |
√ |
Listagem dos tópicos de uma instância de Kafka |
GET /v2/{project_id}/instances/{instance_id}/topics |
dms:instance:get |
√ |
√ |
Modificação dos tópicos de uma instância de Kafka |
PUT /v2/{project_id}/instances/{instance_id}/topics |
dms:instance:modify |
√ |
√ |
Exclusão dos usuários em lote |
PUT /v2/{project_id}/instances/{instance_id}/users |
dms:instance:modify |
√ |
√ |
Criação de um usuário |
POST /v2/{project_id}/instances/{instance_id}/users |
dms:instance:modify |
√ |
√ |
Redefinição de uma senha do usuário |
PUT /v2/{project_id}/instances/{instance_id}/users/{user_name} |
dms:instance:get |
√ |
√ |
Consulta da lista de usuários |
GET /v2/{project_id}/instances/{instance_id}/users |
dms:instance:get |
√ |
√ |
Consulta das permissões de usuário |
GET /v1/{project_id}/instances/{instance_id}/topics/{topic_name}/accesspolicy |
dms:instance:get |
√ |
√ |
Concessão das permissões de usuário |
POST /v1/{project_id}/instances/{instance_id}/topics/accesspolicy |
dms:instance:modify |
√ |
√ |
Consulta das mensagens |
GET /v2/{project_id}/instances/{instance_id}/messages |
dms:instance:get |
√ |
√ |
Exclusão de uma tarefa em segundo plano |
DELETE /v2/{project_id}/instances/{instance_id}/tasks/{task_id} |
dms:instance:deleteBackgroundTask |
√ |
√ |
Listagem das tarefas em segundo plano |
GET /v2/{project_id}/instances/{instance_id}/tasks |
dms:instance:getBackgroundTask |
√ |
√ |
Consulta das tarefas em segundo plano |
GET /v2/{project_id}/instances/{instance_id}/tasks/{task_id} |
dms:instance:getBackgroundTask |
√ |
√ |
Adição ou exclusão das tags em lote |
POST /v2/{project_id}/kafka/{instance_id}/tags/action |
dms:instance:modify |
√ |
√ |
Listagem das tags de um projeto |
GET /v2/{project_id}/kafka/tags |
dms:instance:get |
√ |
√ |
Listagem das tags de uma instância |
GET /v2/{project_id}/kafka/{instance_id}/tags |
dms:instance:get |
√ |
√ |
Habilitação ou desabilitação do acesso público |
Esta operação é suportada apenas usando o console e não chamando as API. |
dms:instance:modify |
√ |
√ |