Skip to end of metadata
Go to start of metadata

O que é "domínio de autenticação" dos validadores de senha?

Na versão 2.0, a configuração validator era representada por uma tabela Lua na qual cada valor correspondia a um validador de senhas. O processo de validação consistia em acessar os validadores sequencialmente, fazendo-se uma tentativa de autenticação em cada um deles. Caso a autenticação obtivesse sucesso em um validador, a entidade era autenticada no barramento, sem percorrer os validadores seguintes, caso houvessem. Caso a autenticação falhasse em todos os validadores, a autenticação era finalizada sem sucesso.

Na versão 2.1, os validadores devem ser definidos no escopo de um domínio de autenticação. No ato da autenticação, deve-se, portanto, especificar não somente o nome e a senha de autenticação da entidade, mas também o domínio de autenticação. A configuração validator é representada por uma string (pode ser definida várias vezes caso existam mais de um validador) no formato "<domain>:<package>", onde <domain> corresponde ao domínio de autenticação do validador e <package> é o nome do pacote Lua que implementa o validador de senhas. A parte <domain>: é opcional. Caso seja omitida, o domínio adotado para o validador é a string vazia.

Caso o suporte à versão anterior do protocolo esteja habilitado (configuração nolegacy com valor false) na versão 2.1, então é possível definir a configuração legacydomain para indicar qual validador de senha será usado para acessos com a versão antiga. O valor padrão é a string vazia. Caso o suporte à versão antiga do barramento esteja desabilitado essa configuração não precisa ser fornecida.

O que muda nas configurações do barramento?

As variáveis de configuração validator e admin, antes representadas por tabelas Lua, passaram a ser representadas por strings e podem ser definidas mais de uma vez para assumir mais de um valor.

No exemplo a seguir ilustra-se o uso de dois validadores: um para o domínio foo e outro que será o domínio padrão (<domain>: sendo uma string vazia) para autenticações no validador LDAP. O suporte à versão anterior está habilitado (nolegacy = false) então o validador do LDAP também será usado como validador de senha para acessos com a versão antiga, já que a configuração legacydomain também está com valor padrão (string vazia).

validator = "foo:bar"
validator = "openbus.core.services.passwordvalidator.LDAP"
admin = "alice"
admin = "john"
admin = "bob"
nolegacy = false
  • No labels