Para definir uma função para controles de acesso baseados em função (RBAC) no SaltStack Config, você deve definir a tarefa permitida e também atribuir acesso a recursos. Uma tarefa é uma operação específica que pode ser realizada na interface do usuário, como criar, editar ou executar um trabalho. Um recurso é um elemento do seu ambiente, como mestres, subordinados, destinos e dados de arquivos específicos, entre outros.

Tarefas

Tarefas representam casos de uso comuns no SaltStack Config. A ativação de uma tarefa dá à função todas as permissões necessárias para concluir essa tarefa.

A guia Tarefas inclui as seguintes opções.

Tarefa

Descrição

Criar e excluir novos destinos

A função pode criar novos destinos. Usuários atribuídos a essa função podem editar e excluir destinos que eles criaram ou outros destinos definidos em Acesso a Recursos.

Um destino é o grupo de subordinados, em um ou vários mestres Salt, ao qual o comando Salt de um trabalho se aplica. Um mestre Salt também pode ser gerenciado como um subordinado, podendo ser um destino se estiver executando o serviço de subordinados. Consulte Subordinados.

Modificar dados de pilares

A função pode exibir, editar e excluir informações confidenciais armazenadas em pilares. Os usuários que pertencem à função podem editar ou excluir os pilares que eles criaram. Também poderão editar ou excluir outros pilares se receberem acesso a recursos (disponível somente por meio da API (RaaS)).

Pilares são estruturas de dados definidos no mestre Salt e transmitidas a um ou mais subordinados usando destinos. Eles permitem que dados confidenciais e direcionados sejam enviados com segurança apenas ao subordinado relevante. Consulte Pilares.

Modificar servidor de arquivos

A função pode exibir o servidor de arquivos e pode criar, editar ou excluir arquivos. Os usuários que pertencem à função podem editar ou excluir os arquivos que eles criaram. Também poderão editar ou excluir outros arquivos se receberem acesso a recursos (disponível somente por meio da API (RaaS)).

O servidor de arquivos é um local para armazenar arquivos específicos do Salt, como arquivos "top" ou de estado, além de arquivos que podem ser distribuídos para subordinados, como arquivos de configuração do sistema. Consulte Servidor de Arquivos.

Executar comandos arbitrários em subordinados

A função pode acionar comandos fora de um trabalho a serem selecionados pelo mestre Salt. A função não se limita a executar apenas comandos incluídos na definição de um determinado trabalho.

Subordinados são nós que executam o serviço de subordinados e que podem ouvir comandos de um mestre Salt e executar as tarefas solicitadas. Consulte Subordinados.

Aceitar, excluir e rejeitar chaves

A função pode aceitar, excluir e rejeitar chaves de subordinados conforme necessário para a configuração inicial.

Uma chave de subordinado permite a comunicação criptografada entre um mestre Salt e um subordinado Salt. Consulte Chaves de Subordinados.

Ler e modificar usuários, funções, permissões

A função pode visualizar usuários e dados associados, bem como editar funções e configurações de permissões.

Observação: essa tarefa aplica-se apenas às funções integradas de Administrador e Superusuário.

Funções são usadas para definir permissões para vários usuários que compartilham um conjunto comum de necessidades.

Executar comandos em mestres Salt

A função pode executar comandos em mestres Salt, como para executar uma orquestração.

Comandos executados com base no mestre Salt também são chamados de executores Salt. Executores Salt são módulos usados para executar funções de conveniência no mestre Salt. Consulte Trabalhos. Adicionar essa permissão permite que a função use a opção salt-run do recurso Executar comando na guia Subordinados.

Conformidade: criar, editar, excluir e avaliar

A função pode criar, editar, excluir e avaliar políticas do SaltStack SecOps Compliance. Além de conceder permissão para essa tarefa, você também deve definir o acesso de recursos para todos os destinos nos quais deseja que a função realize ações. Por exemplo, se quiser que a função OracleLinuxAdmin defina políticas para um destino OracleLinux, atribua à função uma permissão para concluir essa tarefa e acesso de Leitura ao destino OracleLinux.

Essa tarefa não permite que a função remedie políticas do SaltStack SecOps Compliance.

O SaltStack SecOps Compliance é um complemento para o SaltStack Config que gerencia a postura de conformidade de segurança para todos os sistemas no seu ambiente. Consulte Usando e gerenciando o SaltStack SecOps para obter mais informações.

Observação:

É necessária uma licença do SaltStack SecOps.

Conformidade: remediar

A função pode remediar quaisquer subordinados fora de conformidade detectados em uma avaliação do SaltStack SecOps Compliance.

O SaltStack SecOps Compliance é um complemento para o SaltStack Config que gerencia a postura de conformidade de segurança para todos os sistemas no seu ambiente. Consulte Usando e gerenciando o SaltStack SecOps.

Observação:

É necessária uma licença do SaltStack SecOps.

Conformidade: atualizar conteúdo do SaltStack

A função pode baixar atualizações na biblioteca de segurança do SaltStack SecOps Compliance.

Vulnerabilidade: criar, editar, excluir e avaliar

A função pode criar, editar, excluir e avaliar políticas do SaltStack SecOps Vulnerability. Além de conceder permissão para essa tarefa, também é necessário deve definir o acesso a recursos para todos os destinos com base nos quais você deseja que a função execute avaliações.

Essa tarefa não permite que a função remedie políticas do SaltStack SecOps Vulnerability.

O SaltStack SecOps Vulnerability é um complemento para o SaltStack Config que gerencia vulnerabilidades em todos os sistemas no seu ambiente. Consulte Usando e gerenciando o SaltStack SecOps.

Observação:

É necessária uma licença do SaltStack SecOps.

Vulnerabilidade: remediar

A função pode remediar vulnerabilidades detectadas em uma avaliação do SaltStack SecOps Vulnerability.

O SaltStack SecOps Vulnerability é um complemento para o SaltStack Config que gerencia vulnerabilidades em todos os sistemas no seu ambiente. Consulte Usando e gerenciando o SaltStack SecOps.

Observação:

É necessária uma licença do SaltStack SecOps.

Acesso a recursos

A guia Acesso a Recursos permite que você defina o acesso a recursos para destinos e trabalhos. Um destino é o grupo de subordinados, em um ou vários mestres Salt, ao qual o comando Salt de um trabalho se aplica. Um mestre Salt também pode ser gerenciado como um subordinado, podendo ser um destino se estiver executando o serviço de subordinados. Trabalhos são usados para executar tarefas de execução remota, aplicar estados e iniciar executores Salt.

Os diferentes níveis de acesso a recursos estão descritos abaixo:

  • Destinos
    • Somente Leitura: a função pode exibir o destino indicado e seus detalhes, mas não pode editá-lo ou excluí-lo.
    • Leitura/Gravação: a função pode visualizar e editar o destino indicado.
    • Leitura/Gravação/Exclusão: a função pode visualizar, editar e excluir o destino indicado.
  • Trabalhos
    • Somente Leitura: a função pode visualizar o trabalho indicado e seus detalhes, mas não pode editá-lo ou excluí-lo ou executar o trabalho.
    • Leitura/Execução: a função pode visualizar e executar o trabalho indicado.
    • Leitura/Execução/Gravação: a função pode visualizar e editar o trabalho indicado, bem como executá-lo.
    • Leitura/Executar/Gravação/Exclusão: a função pode visualizar, editar e excluir o trabalho indicado, bem como executá-lo.
  • Outros tipos de recursos: o acesso aos seguintes tipos de recursos deve ser definido usando a API (RaaS). Consulte Definindo permissões de API ou entre em contato com um administrador para obter assistência.
    • Arquivos no servidor de arquivos
    • Dados de pilares
    • Configuração de autenticação

Todos os outros tipos de recursos (excluindo trabalhos, destinos e aqueles listados acima) não exigem uma configuração específica de acesso a recursos.

Diferença entre tarefas permitidas e acesso a recursos

Uma tarefa permitida é ampla categoria de ações permitidas, enquanto o acesso a recursos é mais granular, permitindo que você especifique um recurso específico (como um trabalho ou destino) com base no qual a ação pode ser executada, conforme ilustrado no diagrama a seguir.


permissions-resources-concept

No exemplo a seguir, uma função pode executar test.ping no grupo de destino Linux. A função tem as seguintes configurações de permissões:

  • Acesso de leitura ao destino Linux
  • Acesso de Leitura/Execução a um trabalho que inclui o comando test.ping

permissions-resources-example

Funções clonadas herdam as tarefas permitidas da função original por padrão. Funções clonadas não herdam o acesso a recursos, que deve ser definido separadamente. Consulte Atribuindo acesso a um trabalho ou destino.