Com o sistema RBAC (controle de acesso baseado em função) do SaltStack Config, você pode definir configurações de permissão para vários usuários de uma só vez, pois as configurações de permissão de uma função aplicam-se a todos os usuários incluídos nessa função. Você pode definir essas configurações no espaço de trabalho Funções na interface do usuário.

O SaltStack Config acompanha várias funções integradas que não podem ser excluídas.
  • Usuário: a função padrão atribuída a todos os novos usuários locais, SSO e usuários LDAP. A função Usuário abrange permissões fundamentais, como acesso de leitura, necessárias para executar muitas funções básicas. Os usuários atribuídos a essa função podem exibir e executar trabalhos, bem como exibir históricos de trabalhos, retornos de trabalhos e relatórios para determinados subordinados e tipos de trabalho, limitados às configurações de acesso a recursos da função.
  • Administrador: essa função precisa de acesso a ferramentas mais avançadas do que a função Usuário e, portanto, pode acessar a Administração do Sistema. Administradores podem exibir (e, em alguns casos, editar) dados confidenciais encontrados nas configurações de usuários e no pilar. A função pode criar, atualizar e excluir recursos como arquivos, trabalhos e destinos. Administradores também podem gerenciar chaves conforme necessário ao configurar novos nós.
  • Superusuário: Superusuários podem executar qualquer operação no SaltStack Config, o que inclui acessar a Administração do Sistema. root recebe a função Superusuário. Essa função não pode ser excluída ou clonada. Você pode adicionar qualquer grupo ou usuário à função, mas não pode modificar nenhuma das outras configurações da função. Somente usuários avançados devem ser adicionados à função Superusuário, pois ela ignora efetivamente as restrições de permissões.

Além disso, você pode criar funções personalizadas para as necessidades exclusivas da sua organização.

Para conceder uma permissão de função para concluir uma tarefa, você deve definir a tarefa permitida e também atribuir acesso a um recurso ou área funcional. Uma permissão é uma ampla categoria de ações permitidas, enquanto o acesso ao recurso permite que você defina um recurso específico (por exemplo, um trabalho ou destino) em relação ao qual a ação pode ser concluída.

O acesso a recursos para determinados tipos de recursos e áreas funcionais deve ser definido na API (RaaS), e não no Editor de funções.

Depois de criar uma função, você pode optar por cloná-la, definir tarefas permitidas e atribuir acesso a um trabalho ou destino.

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.

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.


Um diagrama que mostra a relação entre tarefas e recursos no SaltStack Config

Neste exemplo, uma função pode executar test.ping no grupo de destino do Linux com estas 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

Um diagrama que mostra a relação entre o acesso à tarefa e ao recurso para um comando test.ping.

Tarefas

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 Como criar destinos.

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 Como criar arquivos de estado e dados de 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 Como criar arquivos de estado e dados de pilares.

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.

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.

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 Como criar 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 para obter mais informações.

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

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 para obter mais informações.

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.

Observação: Os tipos de recursos não definidos na tabela não exigem configurações específicas de acesso a recursos.
Tipo de Recurso Níveis de Acesso
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 a esses tipos de recursos deve ser definido usando a API (RaaS)
  • Arquivos no servidor de arquivos
  • Dados de pilares
  • Configuração de autenticação
Definido na API (RaaS)

Para criar e definir uma função:

Pré-requisitos

Para definir funções de usuário, você deve ter acesso de administrador.

Procedimento

  1. No menu lateral, clique em Administração > Funções.
  2. Clique em Criar e digite um nome para a sua função.
  3. Em Tarefas, selecione ações permitidas para conceder à função.
  4. Clique em Salvar.
  5. Para atribuir acesso a um trabalho ou destino, selecione a função no espaço de trabalho Funções, localize o trabalho ou destino necessário em Acesso a Recursos e selecione o nível de acesso desejado. Por exemplo, para permitir que uma função execute trabalhos, selecione Ler/Executar e clique em Salvar.
  6. (Opcional) Para incluir grupos, selecione a função no espaço de trabalho Funções, escolha em Grupos os grupos que deseja incluir e clique em Salvar.
    Observação: Permissões de função são aditivas. Os usuários em grupos atribuídos a várias funções recebem acesso a uma combinação de todos os itens concedidos de cada função. Os grupos selecionados, incluindo todos os usuários nesses grupos, recebem todas as tarefas permitidas e acesso a recursos definidos nas configurações de função.
  7. (Opcional) Para clonar uma função, selecione-a no espaço de trabalho Funções, clique em Clonar, digite um novo nome para ela e clique em Salvar .
    Observação: Funções clonadas herdam as tarefas permitidas da função original por padrão. As funções clonadas não herdam o acesso a recursos que deve ser definido separadamente.
  8. (Opcional) Em algumas situações, pode ser necessário configurar permissões mais granulares. Para conceder permissões Avançadas, clique em Administração > Funções > Avançadas, selecione a função e marque/desmarque permissões adicionais. Clique em Salvar. Para obter mais informações sobre tipos de itens e permissões Avançadas, consulte Tipos de itens e permissões avançadas.
    Observação: As permissões mínimas recomendadas para operações de usuário típicas estão realçadas em azul.
    Permissões selecionadas para um usuário típico no SaltStack Config