Além dos três realms incorporados, você também pode criar realms personalizados que armazenem dados de usuário de algum outro modo, como em um banco de dados relacional. O desenvolvimento de um realm personalizado está fora do escopo deste documento. Para obter mais informações, consulte o Capítulo 5, Securing Applications, no Oracle GlassFish Server Application Development Guide.
Para fins de administração, os realms personalizados são implementados por uma classe (chamada de LoginModule
) derivada do pacote do Java Authentication and Authorization Service (JAAS).
Siga o procedimento descrito em Para Criar um Realm, digitando o nome do realm personalizado e o nome da classe LoginModule
.
Use qualquer nome exclusivo para o realm personalizado; por exemplo, myCustomRealm
.
Clique em OK.
Edite o arquivo de configuração de log-in do domínio, domain-dir/config/login.conf
, e adicione o nome da classe totalmente qualificado do LoginModule
do JAAS no final do arquivo, como se segue:
realmName { fully-qualified-LoginModule-classname required; };
Por exemplo,
myCustomRealm { com.foo.bar.security.customrealm.simpleCustomLoginModule required; };
Copie a classe LoginModule
e todas as classes dependentes no diretório domain-dir/lib/classes
.
Reinicie o servidor se Reinicialização Necessária aparecer no Console de Administração.
Verifique se o realm está devidamente carregado.
Verifique domain-dir/logs/server.log
para garantir que o servidor tenha carregado o realm. O servidor deverá chamar o método init
do realm.