Apêndice A. Referência
A.1. Módulos de Autenticação Incluídos Copiar o linkLink copiado para a área de transferência!
Copiar o linkLink copiado para a área de transferência!
Os seguintes módulos de autenticação estão incluídos no JBoss EAP 6. Algumas dessas autorizações de manuseio como também de autenticação. Isto inclui normalmente a palavra
Role
com o nome Code
.
Quando você configurar esses módulos, use o valor
Code
ou o nome completo (pacote qualificado) para referir-se ao module.jaa
Módulos de Autenticação
Código | Classe | Descrição |
---|---|---|
Cliente | Classe | O módulo de login é designado a estabelecer credenciais e a identidade do chamador quando o JBoss EAP 6 estiver agindo como cliente. Isto nunca deve ser usado como parte de um security domain usado na autenticação do servidor atual. |
Remoto | N/A | O módulo de login é usado para verificar se a solicitação sendo autenticada no momento é uma solicitação recebida numa conexão Remota. Neste caso, a identidade que foi criada durante o processo de autenticação é usado e associado com a solicitação atual. Caso a solicitação não chegar numa conexão Remota, este módulo não realiza nada e permite que o JAAS baseado no login continue ao próximo módulo. |
RealmDirect | N/A | O módulo de login RealmDirect faz uso do realm de segurança para autenticar a solicitação atual. Caso isto não ocorra no módulo de login Remoto, o realm será usado para carregar as funções dos usuários. Por default, este módulo de login assume que o realm use o ApplicationRealm nomeado, embora outros nomes possam ser substituídos. A vantagem desta abordagem é que toda a configuração store de backup pode ser deixada no realm com o security domain delegando o realm. |
Opções | Tipo | Default | Descrição |
---|---|---|---|
multi-threaded | true ou false
| false
|
Configure para verdadeiro caso cada thread possua o próprio storage credencial e principal. Configure para falso para indicar que todos os threads na MV compartilham a mesma identidade e credencial.
|
password-stacking
| useFirstPass ou false
| false
|
Configure para useFirstPass para indicar que este módulo de login deve buscar por informações stored no LoginContext para uso como a identidade. Esta opção pode ser usada quando empilhando outros módulos de login com este.
|
restore-login-identity
| true ou false
| false
|
Configure para verdadeiro caso a identidade e credencial vistos no início do método login() devem ser restaurados após o método logout() ser invocado.
|
Código | Certificate
|
Classe | org.jboss.security.auth.spi.BaseCertLoginModule
|
Descrição |
Este módulo de login é designado a autenticar os usuários baseados no
X509 Certificates . Um caso de usuário sobre isto é a autenticação CLIENT-CERT de um aplicativo da web.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
securityDomain
| faixa |
nenhum
|
Nome do security domain que possui a configuração JSSE para o truststore que contém os certificados trusted.
|
verifier
| Classe |
nenhum
|
Nome de clouds para uso em importações.
org.jboss.security.auth.certs.X509CertificateVerifier
|
Código | CertificateUsers
|
Classe | org.jboss.security.auth.spi.UsersRolesLoginModule
|
Descrição |
Isto usa os recursos das propriedades. O primeiro mapeia os nomes dos usuários para senhas e o segundo mapeia os nomes do usuário para funções.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
unauthenticatedIdentity
| Sequência |
nenhum
|
Define o nome principal que deve ser determinado para solicitações que não contém informação da autenticação. Isto pode permitir que servlets não protegidos invocarem métodos nos EJBs que não requerem uma função específica. Tal principal não possui funções associadas e pode apenas acessar tanto métodos EJB ou EJBs que são associados com uma restrição
unchecked permission .
|
password-stacking
| useFirstPass ou false
| false
|
Configure para
useFirstPass para indicar que esse módulo de login deve buscar pela informação stored no LoginContext para uso como identidade. Esta opção pode ser usada quando empilhando outros módulos com este.
|
hashAlgorithm | Sequência |
nenhum
|
O nome do algoritmo
java.security.MessageDigest para efetuar o hash da senha. Não há default para isto, de forma que esta opção deve ser configurada explicitamente para habilitação do hash. Quando o hashAlgoritm for especificado, a senha de texto obtido do CallbackHandler obtém o hash antes de ser passada ao UsernamePasswordLoginModule.validatePassword como argumento inputPassword. O expectedPassword stored no arquivo users.properties deve possuir hash comparáveis. Refira-se ao http://docs.oracle.com/javase/6/docs/api/java/security/MessageDigest.html para informações sobre o java.security.MessageDigest e algoritmos que essa classe suporta.
|
hashEncoding
| base64 ou hex
| base64
|
O formato desta sequência para a senha com hash, caso o
hashAlgorithm seja também configurado.
|
hashCharset
| Sequência |
A codificação default configurada no ambiente do contêiner.
|
A codificação usada para converter a senha de texto limpo para um byte array.
|
usersProperties
|
O caminho de arquivo inteiramente qualificado e nome do arquivo ou recurso de propriedades.
| users.properties
|
O arquivo contendo os mapeamentos entre os usuários e senhas. Cada propriedade no arquivo possui o formato
username=password .
|
rolesProperties
| O caminho de arquivo inteiramente qualificado e nome do arquivo ou recurso de propriedades. | roles.properties
|
O arquivo contendo os mapeamentos entre os usuários e funções. Cada propriedade do arquivo possui o formato
username=role1,role2,...,roleN .
|
ignorePasswordCase
| true ou false
| false
|
Se é que a comparação da senha deve ignorar o caso. Isto é útil para a codificação de senha com hash onde o caso da senha com hash não é significante.
|
principalClass
| O nome da classe inteiramente qualificado. |
nenhum
|
A classe de implementação
Principal que contém um condutor que leva um argumento de Sequência para o nome principal.
|
roleGroupSeparator
|
Um caractere único
| . (um período único)
|
O caractere usado para separar o nome do usuário a partir do nome do grupo de função no arquivo
rolesGroup .
|
defaultUsersProperties
| faixa | defaultUsers.properties
|
O nome do recurso ou arquivo de retrocedência caso o arquivo usersProperties não possa ser encontrado.
|
defaultRolesProperties
| faixa | defaultRoles.properties
|
O nome do recurso ou arquivo de retrocedência caso o arquivo
rolesProperties não possa ser encontrado.
|
hashUserPassword
| true ou false
| true
|
Se é que efetuar o hash na senha inserida pelo usuário, quando o
hashAlgorithm for especificado. O default é true .
|
hashStorePassword
| true ou false
| true
|
Se é que a senha do store retornada do
getUsersPassword() deve possuir o hash, quando o hashAlgorithm for especificado.
|
digestCallback
| O nome da classe inteiramente qualificado. |
nenhum
|
O nome da classe da implementação
org.jboss.crypto.digest.DigestCallback que inclui o conteúdo de resumo pré ou pós tal como valores salt. Isto é apenas usado caso o hashAlgorithm seja especificado.
|
storeDigestCallback
| O nome da classe inteiramente qualificado. |
nenhum
|
O nome da classe da implementação
org.jboss.crypto.digest.DigestCallback que inclui o conteúdo de resumo pré/pós como salts para o hashing da senha stored. Isto é apenas usado caso o hashStorePassword for verdadeiro e o hashAlgorithm for especificado.
|
callback.option.STRING
| Diversos | nenhum |
Todas as opções pré-fixadas com
callback.option. são passadas para o método DigestCallback.init(Map) . O nome do usuário inserido é sempre passado através da opção javax.security.auth.login.name e a senha de entrada/store é passada através da opção javax.security.auth.login.password ao digestCallback ou storeDigestCallback .
|
Código | CertificateRoles
|
Classe | org.jboss.security.auth.spi.CertRolesLoginModule
|
Descrição |
O módulo de login estende o módulo de login do certificado para adicionar as capacidades de mapeamento de função a partir do arquivo de propriedades. Isto leva tudo de mesmas opções como o módulo de login do Certificado e adiciona as seguintes opções:
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
rolesProperties
| Sequência | roles.properties
|
O nome do recurso ou arquivo contendo as funções para determinação de cada usuário. O arquivo de propriedades de função no formato username=role1,role2 onde o nome do usuário é o DN do certificado, escapando qualquer sinal de
= (igual) e caracteres com espaço. A seguinte amostra está no formato correto:
CN\=unit-tests-client,\ OU\=Red\ Hat\ Inc.,\ O\=Red\ Hat\ Inc.,\ ST\=North\ Carolina,\ C\=US=JBossAdmin
|
defaultRolesProperties
| Sequência | defaultRoles.properties
|
O nome do recurso ou arquivo de retrocedência caso o arquivo
rolesProperties não possa ser encontrado.
|
roleGroupSeparator
| Um caractere único | . (um período único)
|
Qual caractere de uso conforme o separador de grupo de função no arquivo
roleProperties .
|
Código | Database |
Classe | org.jboss.security.auth.spi.DatabaseServerLoginModule
|
Descrição |
O módulo de login baseado no JDBC que suporta o mapeamento de função e autenticação. Isto é baseado em duas tabelas lógicas, com as seguintes definições:
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
dsJndiName
| Recurso JNDI |
nenhum
|
O nome do storing do recurso JNDI da informação de autenticação. Esta opção é requerida.
|
principalsQuery
| Uma declaração SQL preparada | select Password from Principals where PrincipalID=?
|
A fila SQL preparada para obtenção da informação sobre o principal.
|
rolesQuery
| Uma declaração SQL preparada | select Role, RoleGroup from Roles where PrincipalID=?
|
A fila SQL preparada para obtenção da informação sobre as funções. Isto deve ser equivalente ao
select Role, RoleGroup from Roles where PrincipalID=? , onde Role (Função) é o nome da Função e o valor de coluna RoleGroup deve sempre ser tanto Roles com letra maiúscula R ou CallerPrincipal .
|
Código | DatabaseCertificate
|
Classe | org.jboss.security.auth.spi.DatabaseCertLoginModule
|
Descrição |
O módulo de login estende o módulo de login do Certificado para adicionar as capacidades de mapeamento de função a partir da tabela da fonte de dados. Isto possui as mesmas opções, além das opções adicionais:
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
dsJndiName
| Recurso JNDI |
|
O nome do storing do recurso JNDI da informação de autenticação. Esta opção é requerida.
|
rolesQuery
| Uma declaração SQL preparada | select Role,RoleGroup from Roles where PrincipalID=?
|
A declaração preparada SQL a ser executada em ordem das funções a serem mapeadas. Isto deve ser equivalente ao
select Role, RoleGroup from Roles where PrincipalID=? , onde Role (Função) é o nome da Função e o valor de coluna RoleGroup deve sempre ser tanto Roles com letra maiúscula R ou CallerPrincipal .
|
suspendResume
| true ou false
| true
|
Se é que a transação JTA existente deve ser suspendida durante as operações de fonte de dados.
|
Código | Identity
|
Classe | org.jboss.security.auth.spi.IdentityLoginModule
|
Descrição |
Associa o principal especificado nas opções de módulo com qualquer assunto autenticado em relação ao módulo. O tipo de classe Principal usado é
org.jboss.security.SimplePrincipal. . Caso nenhuma opção seja especificada, um principal com o nome de guest será usado.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
principal
| Sequência | guest
|
O nome a ser usado pelo principal.
|
roles
| A lista de vírgula separada das sequências |
nenhum
|
A lista de vírgula delimitada das funções a serem determinadas ao assunto.
|
Código | Ldap
|
Classe | org.jboss.security.auth.spi.LdapLoginModule
|
Descrição |
Autentica em relação ao servidor LDAP, quando o nome do usuário e senha forem stored num servidor LDAP que é acessível usando um provedor JNDI LDAP. Muitas das opções não são requeridas, uma vez que elas são determinadas pelo provedor LDAP ou o ambiente.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
java.naming.factory.initial
| nome da classe | com.sun.jndi.ldap.LdapCtxFactory
|
O nome da classe de implementação
InitialContextFactory .
|
java.naming.provider.url
| ldap:// URL
|
nenhum
|
URL para o servidor LDAP.
|
java.naming.security.authentication
| none , simple , ou o nome do mecanismo SASL
| simple
|
O nível de segurança para uso para efetuar o bind no servidor LDAP.
|
java.naming.security.protocol
| O protocolo de transporte |
Caso não especificado, determinado pelo provedor.
|
O protocolo de transporte para uso do acesso de segurança, tal como o SSL.
|
java.naming.security.principal
| Sequência |
nenhum
|
O nome do principal para autenticação do chamador para o serviço. Isto é construído a partir de outras propriedades descritas abaixo.
|
java.naming.security.credentials
| O tipo de credencial |
nenhum
|
O tipo de credencial usado pelo esquema de autenticação. Alguns exemplos, incluindo a senha com hash, senha de texto limpo, chave ou certificado. Caso a propriedade não estiver especificada, o comportamento é determinado pelo provedor do serviço.
|
principalDNPrefix
| Sequência |
nenhum
|
O prefixo adicionado para o nome do usuário para formar o DN. Você pode solicitar o nome do usuário e construir o DN inteiramente qualificado usando o
principalDNPrefix e principalDNSuffix .
|
principalDNSuffix
| faixa |
|
O sufixo adicionado para o nome do usuário para formar o DN. Você pode solicitar o nome do usuário e construir o DN inteiramente qualificado usando o
principalDNPrefix e principalDNSuffix .
|
useObjectCredential
| true ou false
|
falso
|
Se é que o credencial deve ser obtido como um Objeto Opaco usando o tipo
org.jboss.security.auth.callback.ObjectCallback de Callback ao invés de uma senha char[] usando um JAAS PasswordCallback. Isto permite a passagem de informação de credencial non-char[] ao servidor LDAP.
|
rolesCtxDN
| Um DN inteiramente qualificado |
nenhum
|
O DN inteiramente qualificado para o contexto para busca das funções do usuário.
|
userRolesCtxDNAttributeName
|
Atributo
|
nenhum
|
O atributo no objeto do usuário que contém o DN para o contexto para pesquisa das funções do usuário. Isto difere-se do
rolesCtxDN no que se refere ao contexto de busca das funções do usuário, que poderão ser únicas para cada usuário.
|
roleAttributeID
| Atributo | roles
|
Nome do atributo contendo funções do usuário.
|
roleAttributeIsDN
| true ou false
| false
|
Se é que o
roleAttributeID contém o DN inteiramente qualificado do objeto da função. Caso seja falso, o nome da função é obtida do valor do atributo roleNameAttributeId do nome do contexto. Certos esquemas do diretório, tais como o Microsoft Active Directory, requerem que este atributo seja configurado para true .
|
roleNameAttributeID
| Atributo | group
|
O nome do atributo com o contexto
roleCtxDN que contém o nome da função. Caso a propriedade roleAttributeIsDN seja configurada para true , esta propriedade será usada para buscar o atributo do nome do objeto de função.
|
uidAttributeID
| Atributo | uid
|
O nome do atributo no
UserRolesAttributeDN que corresponde à ID do usuário. Isto é usado para localizar as funções do usuário.
|
matchOnUserDN
| true ou false
| false
|
Se é que a busca das funções do usuário devem coincidir com o DN inteiramente distinguido do usuário ou apenas nome do usuário. Caso seja
true , o DN completo de usuário é usado como valor de combinação. Caso seja false , apenas o nome do usuário é usado para combinar o valor em referência ao atributo uidAttributeName .
|
allowEmptyPasswords
| true ou false
| true
|
Se é que permitir as senhas vazias. A maioria dos servidores LDAP tratam senhas vazias com tentativas de login anônimas. Configure isto para falso, com o objetivo de rejeitar senhas vazias.
|
Código | LdapExtended
|
Classe | org.jboss.security.auth.spi.LdapExtLoginModule
|
Descrição |
Uma implementação de módulo de login que usa buscas para localizar o usuário bind e funções associadas. A fila das funções segue recursivamente os DNs para navegar a uma estrutura de função hierárquica. Isto usa as mesmas opções
java.naming como o módulo Ldap e usa as seguintes opções ao invés de outras opções do módulo Ldap.
A autenticação acontece em duas etapas:
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
baseCtxDN
| Um DN inteiramente qualificado |
nenhum
|
O DN fixado do contexto de nível superior para iniciar a busca do usuário.
|
bindDN
| Um DN inteiramente qualificado |
nenhum
|
O DN usado para efetuar o bind no servidor LDAP para as solicitações de funções e dos usuários. Este DN precisa ler e buscar permissões nos valores
baseCtxDN e rolesCtxDN .
|
bindCredential
| Uma sequência, opcionalmente criptografada |
nenhum
|
A senha armazenada como texto plano para o
bindDN , ou carregada externamente usando o comando EXT . Essa senha pode ser criptografada usando o mecanismo vault. Você pode usar os seguintes formatos:
Refira-se ao seguinte tópico para maiores informações sobre as sequências confidenciais de criptografia: Seção 10.11.2, “Criação do Java Keystore para Sequências Confidenciais do Store”
|
baseFilter
| Sequência do filtro LDAP |
nenhum
|
O filtro de busca para localizar o contexto do usuário para autenticação. O nome do usuário ou userDN obtido da chamada de retorno do módulo de login é substituído no filtro em qualquer local onde uma expressão
{0} for usada. Uma amostra comum de busca do filtro é (uid={0}) .
|
rolesCtxDN
| DN inteiramente qualificado |
nenhum
|
O DN fixado do contexto de busca para as funções do usuário. Este não é o DN onde as funções atuais se encontram, mas o DN onde os objetos contendo as funções do usuário estão. Por exemplo, num servidor Microsoft Active Directory, este é o DN onde a conta do usuário se encontra.
|
roleFilter
| Sequência do filtro LDAP |
|
A busca do filtro usada para localizar as funções associadas com o usuário de autenticação. O nome do usuário de entrada ou userDN obtido pela chamada de retorno do módulo de login é substituído no filtro em qualquer local onde a expressão
{0} for usada. O uderDN autenticado é substituído no filtro em qualquer lugar onde um {1} for usado. Uma amostra da busca do filtro que combina com o nome do usuário de entrada é (member={0}) . Uma alternativa que combina com o userDN autenticado é o (member={1}) .
|
roleAttributeIsDN | true ou false
| false
|
Se é que o
roleAttributeID contém o DN inteiramente qualificado do objeto da função. Caso seja falso, o nome da função é obtida do valor do atributo roleNameAttributeId do nome do contexto. Certos esquemas do diretório, tais como o Microsoft Active Directory, requerem que este atributo seja configurado para true .
|
defaultRole
|
Nome da função
|
nenhum
|
A função incluída para todos os usuários autenticados.
|
parseRoleNameFromDN
| true ou false
| false
|
O sinalizador indicando se o DN retornado por uma fila contém o roleNameAttributeID. Caso configurado para
true , o DN é checado pelo roleNameATtributeID. Caso configurado para false , o DN não é checado pelo roleNameAttributeID. Este sinalizador pode melhorar o desempenho das filas LDAP.
|
parseUsername
| true ou false
| false
|
Um sinalizador indicando se o DN deve ser pesquisado pelo nome do usuário. Caso configurado para
true , o DN pelo nome do usuário. Caso configurado para false o DN pelo nome do usuário. Esta opção é usada juntamente com o usernameBeginString e usernameEndString.
|
usernameBeginString
|
uma sequência
|
nenhum
|
Define a sequência que está prestes a ser removida a partir do início do DN para revelar o nome do usuário. Esta opção é usada juntamente com o
usernameEndString .
|
usernameEndString
|
uma sequência
|
nenhum
|
Define a sequência que está prestes a ser removida a partir do final do DN para revelar o nome do usuário. Esta opção é usada juntamente com o
usernameBeginString .
|
roleNameAttributeID
| Atributo | group
|
O nome do atributo com o contexto
roleCtxDN que contém o nome da função. Caso a propriedade roleAttributeIsDN seja configurada para true , esta propriedade será usada para buscar o atributo do nome do objeto de função.
|
distinguishedNameAttribute
| Atributo | distinguishedName
|
O nome do atributo na entrada do usuário que contém o DN do usuário. Isto deve ser necessário caso o próprio DN do usuário conter caracteres especiais (barra invertida, por exemplo) que previne o mapeamento do usuário correto. Caso o atributo não existir, o DN de entrada será usado.
|
roleRecursion
| O número | 0
|
Os números de níveis de recursão de busca da função serão inferiores ao do contexto de combinação. Desabilite a recursão configurando-a para
0 .
|
searchTimeLimit
| O número | 10000 (10 segundos)
|
O intervalo em milésimos de segundos para buscas do usuário e funções.
|
searchScope
|
Um dos:
OBJECT_SCOPE, ONELEVEL_SCOPE, SUBTREE_SCOPE
| SUBTREE_SCOPE
|
O escopo de busca para uso.
|
allowEmptyPasswords
| true ou false
| true
|
Se é que permitir as senhas vazias. A maioria dos servidores LDAP tratam senhas vazias com tentativas de login anônimas. Configure isto para falso, com o objetivo de rejeitar senhas vazias.
|
Código | RoleMapping
|
Classe | org.jboss.security.auth.spi.RoleMappingLoginModule
|
Descrição |
Mapeia a função que é o resultado final do processo de autenticação a uma função declarativa. Este módulo deve ser sinalizado como
optional quando você adicioná-lo ao security domain.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
rolesProperties
| O caminho de arquivo inteiramente qualificado e nome do arquivo ou recurso de propriedades. | roles.properties
|
O caminho do arquivo inteiramente qualificado e nome do arquivo de propriedades ou recurso que mapeia funções para substituição das funções. O formato é
original_role=role1,role2,role3 .
|
replaceRole
| true ou false
| false
|
Se é que adicionar às funções atuais ou substituir as funções atuais pelas mapeadas. Isto é substituído caso configurado para
true .
|
Código | RunAs
|
Classe | Class: org.jboss.security.auth.spi.RunAsLoginModule
|
Descrição |
O módulo ajudante que envia uma função
run as à pilha para a duração da fase de login da autenticação e tira a função run as da pilha tanto na fase de confirmação ou anulação. Este módulo de login fornece uma função para os demais módulos que devem acessar os recursos de segurança com o objetivo de executar suas autenticações, tais como o módulo de login que acessa o EJB de segurança. O RunAsLoginModule deve ser configurado antes dos módulos de login que requerem a função run as a ser estabelecida.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
roleName
| Nome da função | nobody
|
O nome da função de uso como a função
run as durante a fase de login.
|
Código | Simple
|
Classe | org.jboss.security.auth.spi.SimpleServerLoginModule
|
Descrição |
O módulo para montagem rápida de segurança para propósitos de testes. Ele implementa o seguinte algoritmo simples:
|
Opções de Módulo
Simple
O módulo Simple
não possui opções.
Código | ConfiguredIdentity
|
Classe | org.picketbox.datasource.security.ConfiguredIdentityLoginModule
|
Descrição |
Associa o principal especificado nas opções do módulo com qualquer assunto autenticado em referência ao módulo. O tipo de classe Principal usada é
org.jboss.security.SimplePrincipal .
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
principal
| Nome do principal. | none
|
O principal que será associado com qualquer assunto autenticado em referência ao módulo.
|
Código | SecureIdentity
|
Classe | org.picketbox.datasource.security.SecureIdentityLoginModule
|
Descrição |
Este módulo é fornecido para propósitos de legacia. Isto permite você criptografar a senha e então usar a senha criptografada com um principal estatístico. Caso o seu aplicativo usar
SecureIdentity , considere o uso de um mecanismo vault da senha.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
username
| faixa | nenhum | O nome do usuário para autenticação. |
password
| sequência criptografada | nenhum |
A senha de uso para autenticação. Para criptografar a senha, use o módulo diretamente na linha de comando.
java org.picketbox.datasource.security.SecureIdentityLoginModule password_to_encrypt
Copie o resultado deste comando no campo do valor da opção do módulo.
|
managedConnectionFactoryName
| Recurso JCA | nenhum |
O nome da conexão JCA para a fonte de dados.
|
Código | PropertiesUsers
|
Classe | org.jboss.security.auth.spi.PropertiesUsersLoginModule
|
Descrição |
Usa o arquivo das propriedades para aplicar o store dos nomes do usuário e senhas para autenticação. Nenhuma autorização (mapeamento de função) é fornecido. Este módulo é apenas apropriado para testes.
|
Código | SimpleUsers
|
Classe | org.jboss.security.auth.spi.SimpleUsersLoginModule
|
Descrição |
O módulo de login efetua o store do nome do usuário e senha de texto limpo no arquivo de propriedades Java. Isto está incluído para testes apenas e não é apropriado para um ambiente de produção.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
username
| faixa | nenhum | O nome de usuário para uso da autenticação. |
password
| faixa | nenhum | A senha de texto limpo para uso da autenticação. |
Código | LdapUsers
|
Classe | org.jboss.security.auth.spi.LdapUsersLoginModule
|
Descrição |
O módulo
LdapUsers é substituído pelos módulos ExtendedLDAP e AdvancedLdap .
|
Código | Kerberos
|
Classe | com.sun.security.auth.module.Krb5LoginModule
|
Descrição |
Executa a autenticação de login do Kerberos, usando GSSAPI. Este módulo faz parte do framework de segurança a partir do API fornecido pelo Sun Microsystems. Maiores informações podem ser encontradas no http://docs.oracle.com/javase/1.4.2/docs/guide/security/jaas/spec/com/sun/security/auth/module/Krb5LoginModule.html. Este módulo precisa ser emparelhado com outro módulo que manuseia o mapeamento de funções e autenticação.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
storekey
| true ou false
| falso |
Se é que ou não adicionar o
KerberosKey aos credenciais privados do assunto.
|
doNotPrompt
| true ou false
| falso |
Caso configurado para
true , não haverá solicitação de senha ao usuário.
|
useTicketCache
|
Valor Booliano de
. true ou false
| falso |
Caso
true , o GTG é obtido a partir do cache do tíquete. Caso false , o cache do tíquete não será usado.
|
ticketcache
| Um arquivo ou recurso representando um cache de tíquete Kerberos. |
O default depende do sistema operacional em que você está utilizando.
| A localização do cache do tíquete do cache. |
useKeyTab
| true ou false
| falso | Se é que obter a chave principal a partir de um arquivo de tabela de chave. |
keytab
| O arquivo ou recurso representando o Kerberos keytab. |
a localização do arquivo de configuração Kerberos do sistema operacional ou
/home/user/krb5.keytab
| A localização do arquivo da tabela da chave. |
principal
| Sequência | nenhum |
O nome do principal. Isto pode ser tanto um nome de usuário ou um nome de serviço tal como
host/testserver.acme.com . Use isto ao invés de obter o principal a partir da tabela chave ou quando a tabela chave conter mais de um principal.
|
useFirstPass
| true ou false
| falso |
Se é que recuperar o nome do usuário e senha a partir do estado compartilhado do módulo, usando o
javax.security.auth.login.name e javax.security.auth.login.password como chaves. Caso a autenticação falhar, nenhuma nova tentativa é realizada.
|
tryFirstPass
| true ou false
| falso |
O mesmo ao do
useFirstPass , mas se a autenticação falhar, o módulo usa o CallbackHandler para recuperar uma nova senha e nome do usuário. Caso uma segunda autenticação falhar, a falha é relatada ao aplicativo de chamada.
|
storePass
| true ou false
| falso |
Se é que realizar o store no nome do usuário e senha no estado compartilhado do módulo. Isto não acontece caso as chaves já existirem no estado compartilhado ou se a autenticação falhar.
|
clearPass
| true ou false
| falso |
Defina isto para
true para limpar o nome do usuário e senha do estado compartilhado após ambas as fases de autenticação forem completadas.
|
Código | SPNEGOUsers
|
Classe | org.jboss.security.negotiation.spnego.SPNEGOLoginModule
|
Descrição |
Permite a autenticação SPNEGO ao servidor Microsoft Active Directory ou de outro ambiente que suporta o SPNEGO. O SPNEGO pode levar as credenciais do Kerberos. Este módulo precisa ser emparelhado com outro módulo que manuseia o mapeamento de função e autenticação.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
storeKey
| true ou false
| false
|
Se é que ou não aplicar o store na chave.
|
useKeyTab
| true ou false
| false
|
Se é que usar uma tabela de chave.
|
principal
|
Sequência representando o principal para a autenticação Kerberos.
|
nenhum
|
O nome do principal para autenticação.
|
keyTab
|
O arquivo ou recurso de representação da keytab.
| none
|
A localização da tabela da chave.
|
doNotPrompt
| true ou false
| false
|
Se é que solicitar a senha.
|
debug
| true ou false
| false
|
Se é que gravar as mensagens mais verbosas para propósitos de depuração.
|
Código | AdvancedLdap |
Classe | org.jboss.security.negotiation.AdvancedLdapLoginModule
|
Descrição |
O módulo que fornece funcionalidade adicional, tal como SASL e uso do security domain JAAS.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
bindAuthentication
|
faixa
|
nenhum
|
O tipo de autenticação SASL para uso do binding para o servidor do diretório.
|
java.naming.provider.url
| string
|
nenhum
|
O URI do servidor do diretório.
|
baseCtxDN
|
O Distinguished Name (DN - Nome Distinguido) inteiramente qualificado.
|
nenhum
|
O nome distinguido para uso como base para as pesquisas.
|
baseFilter
|
A sequência representando um filtro de busca LDAP.
|
nenhum
|
O filtro para uso para diminuir os resultados de busca.
|
roleAttributeID
|
Uma sequência representando um atributo LDAP.
|
nenhum
|
O atributo LDAP que contém os nomes das funções de autorização.
|
roleAttributeIsDN
| true ou false
| false
|
Se é que o atributo da função é um Distinguished Name (DN - Nome Distinguido).
|
roleNameAttributeID
|
A sequência representando um atributo LDAP.
|
nenhum
|
O atributo contido com o
RoleAttributeId que contém o atributo de função atual.
|
recurseRoles
| true ou false
| false
|
Se é que buscar de recursivamente o
RoleAttributeId para funções.
|
Código | AdvancedADLdap |
Classe | org.jboss.security.negotiation.AdvancedADLoginModule
|
Descrição |
Este módulo estende o módulo de login
AdvancedLdap e adiciona parâmetros extra que são relevantes ao Microsoft Active Directory.
|
Código | UsersRoles |
Classe | org.jboss.security.auth.spi.UsersRolesLoginModul
|
Descrição |
O módulo de login simples que suporta usuários múltiplos e funções de usuários stored em dois arquivos de propriedades diferentes.
|
Opções | Tipo | Default | Descrição |
---|---|---|---|
usersProperties
|
Caminho a um arquivo ou recurso.
| users.properties
|
O arquivo ou recurso que contém os mapeamentos do usuário-à-senha. O formato do arquivo é
user=hashed-password
|
rolesProperties
|
Caminho a um arquivo ou recurso.
| roles.properties
|
O arquivo ou recurso que contém os mapeamentos do usuário-à-função. O formato do arquivo é
username=role1,role2,role3
|
password-stacking
| useFirstPass ou false
| false
|
O valor do
useFirstPass indica que este módulo de login deve primeiramente observar a informação stored no LoginContext para a identidade. Esta opção pode ser usada quando empilhando outros módulos de login com este.
|
hashAlgorithm
|
A sequência representando um algoritmo hashing da senha.
| none
|
O nome do algoritmo
java.security.MessageDigest para efetuar o hash na senha. Não há default de forma que esta opção deve ser explicitamente configurada para habilitar o hashing. Quando o hashAlgorithm for especificado, a senha de texto limpo obtido a partir do CallbackHandler contém hash antes de ser passado ao UsernamePasswordLoginModule.validatePassword como um argumento inputPassword . A senha stored no arquivo users.properties deve ser um hash comparável.
|
hashEncoding
| base64 ou hex
| base64
|
O formato da sequência para a senha com hash, caso o hashAlgoritmo for também configurado.
|
hashCharset
|
Sequência
|
A codificação default determinada no ambiente do período de execução do contêiner.
|
A codificação usada para converter a senha de texto limpo para um byte array.
|
unauthenticatedIdentity
|
O nome principal
|
nenhum
|
Define o nome principal determinado para solicitações que não contém informação de autenticação. Isto pode permitir que servlets não protegidos invoquem métodos nos EJBs que não solicitem uma função específica. Tal principal não possui funções associadas e podem apenas acessar métodos EJB e EJBs que são associados com a restrição
unchecked permission .
|
Módulos de Autenticação Personalizados
Os módulos de autenticação são implementações do javax.security.auth.spi.LoginModule
. Refira-se à documentação API para maiores informações sobre a criação de um módulo de autenticação personalizado.