Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Baseado em arquivo

Visão Geral

Caso nenhum provedor de autenticação externo possa ser usado, você pode usar autenticação baseada em arquivo. Isso exigirá que cada usuário do SUSE Observability seja pré-configurado no arquivo de configuração. Para cada alteração feita em um usuário na configuração, o SUSE Observability será reiniciado automaticamente após aplicar as mudanças com o Helm.

O SUSE Observability inclui uma série de funções padrão, veja a configuração de exemplo abaixo. As permissões atribuídas a cada função padrão e instruções sobre como criar outras funções podem ser encontradas na documentação de controle de acesso com base em função (RBAC).

Configurar autenticação baseada em arquivo

Kubernetes

Para configurar a autenticação baseada em arquivo no Kubernetes, os usuários do SUSE Observability precisam ser adicionados ao authentication.yaml arquivo. Por exemplo:

  • authentication.yaml

stackstate:
  authentication:
    file:
      logins:
        - username: admin
          passwordHash: 5f4dcc3b5aa765d61d8327deb882cf99
          roles: [ stackstate-admin ]
        - username: guest
          passwordHash: 5f4dcc3b5aa765d61d8327deb882cf99
          roles: [ stackstate-guest ]
        - username: poweruser
          passwordHash: 5f4dcc3b5aa765d61d8327deb882cf99
          roles: [ stackstate-power-user ]
        - username: troubleshooter
          passwordHash: 5f4dcc3b5aa765d61d8327deb882cf99
          roles: [ stackstate-k8s-troubleshooter ]

Siga os passos abaixo para configurar usuários e aplicar mudanças:

  1. Em authentication.yaml - adicione usuários. A seguinte configuração deve ser adicionada para cada usuário (veja o exemplo acima):

    • nomeDeUsuário - o nome de usuário usado para fazer login no SUSE Observability. Apenas caracteres alfanuméricos e _ são permitidos.

    • hashDaSenha - a senha usada para fazer login no SUSE Observability. As senhas são armazenadas como um hash bcrypt.

    • funções - a lista de funções das quais o usuário é membro. As funções padrão do SUSE Observability são stackstate-admin, stackstate-power-user e stackstate-guest, para detalhes sobre como criar outras funções, veja funções RBAC.

  2. Armazene o arquivo authentication.yaml junto com o arquivo values.yaml das instruções de instalação do SUSE Observability.

  3. Execute o fazer upgrade do Helm para aplicar as mudanças:

     helm upgrade \
       --install \
       --namespace suse-observability \
       --values values.yaml \
       --values authentication.yaml \
     suse-observability \
     suse-observability/suse-observability

Nota:

  • Um hash de senha bcrypt pode ser gerado usando a seguinte linha de comando htpasswd -bnBC 10 "" <password> | tr -d ':\n' ou usando uma ferramenta online.

  • A primeira execução do comando de upgrade do Helm resultará na reinicialização dos pods, o que pode causar uma breve interrupção na disponibilidade.

  • Inclua authentication.yaml em cada execução de helm upgrade.

  • A configuração de autenticação é armazenada como um segredo do Kubernetes.

Siga os passos abaixo para configurar usuários e aplicar mudanças:

  1. Em authentication.yaml - adicione usuários. A seguinte configuração deve ser adicionada para cada usuário (veja o exemplo acima):

    • nomeDeUsuário - o nome de usuário usado para fazer login no SUSE Observability. Apenas caracteres alfanuméricos e _ são permitidos.

    • senha - a senha usada para fazer login no SUSE Observability. As senhas são armazenadas como um hash MD5 ou um hash bcrypt.

    • funções - a lista de funções das quais o usuário é membro. As funções padrão do SUSE Observability são stackstate-admin, stackstate-power-user, stackstate-k8s-troubleshooter e stackstate-guest; para detalhes sobre como criar outras funções, veja funções RBAC.

  2. Reinicie o SUSE Observability para aplicar as alterações.

Nota:

  • Um hash de senha MD5 pode ser gerado usando os aplicativos de linha de comando md5sum ou md5 no Linux e no Mac.

  • Um hash de senha bcrypt pode ser gerado usando a seguinte linha de comando htpasswd -bnBC 10 "" <password> | tr -d ':\n' ou usando uma ferramenta online.

Usando um segredo externo

Quando as senhas dos usuários devem vir de um segredo externo, siga estas etapas mas preencha os seguintes dados:

kind: Secret
metadata:
   name: "<custom-secret-name>"
type: Opaque
data:
  file_<username1>_password: <base64 of bcrypt of password>
  file_<username2>_password: <base64 of bcrypt of password>

Para cada usuário na seção de logins, um registro deve ser adicionado ao segredo, preenchendo o modelo. Por exemplo:

stackstate:
  authentication:
    file:
      logins:
        - username: admin_user
          roles: [ stackstate-admin ]


kind: Secret
metadata:
   name: "<custom-secret-name>"
type: Opaque
data:
   file_admin_user_password: "base64EncryptedPass"