🇦 No PgAdmin
SET password_encryption = 'md5';
CREATE ROLE ugen_aghu LOGIN PASSWORD 'SENHA_DA_APLICACAO' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE ugen_seguranca LOGIN PASSWORD 'SENHA_DA_APLICACAO' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE ugen_quartz LOGIN PASSWORD 'SENHA_DA_APLICACAO' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE escrita_integra NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE acesso_completo NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE acesso_leitura NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE ugen_bi NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE ugen_epimed NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE ugen_integra NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
GRANT acesso_completo TO ugen_aghu;
GRANT acesso_completo TO ugen_seguranca;
🇧 No servidor do wildfly, gerando hash
# /opt/aghu/jdk/bin/java -cp /opt/aghu/wildfly/modules/system/layers/base/org/picketbox/main/picketbox-4.9.2.Final.jar org.picketbox.datasource.security.SecureIdentityLoginModule "SENHA_DA_APLICACAO"
Encoded password: HASH_DA_SENHA_DA_APLICACAO
🇨 No servidor do wildfly, configurando standalone-full pra LDAP
# /opt/aghu/wildfly/bin/jboss-cli.sh -c
/subsystem=security/security-domain=aghuConfig:add(cache-type=default)
/subsystem=security/security-domain=aghuConfig/authentication=classic:add
/subsystem=security/security-domain=aghuConfig/authentication=classic/login-module=br.gov.mec.aghu.casca.autenticacao.AghuLdapLoginModule:add(code=br.gov.mec.aghu.casca.autenticacao.AghuLdapLoginModule,flag=required,module-options=[dsJndiName=java:/aghuDatasource,debug=true,validarAutenticacaoNegocial="select usuario.id, usuario.login, usuario.ATIVO, ( select count(*) from casca.CSC_PERFIS_USUARIOS perfilusuario inner join casca.CSC_PERFIL perfil on perfil.id = perfilusuario.id_perfil where perfilusuario.id_usuario = usuario.id and (perfilusuario.dthr_expiracao is null or perfilusuario.dthr_expiracao > now()) and perfil.SITUACAO = 'A' ) perfilcount from CASCA.CSC_USUARIO usuario where upper(login) = upper(?)",verificarVinculoServidor="select serv.matricula, serv.vin_codigo, serv.dt_inicio_vinculo , serv.CCT_CODIGO , serv.HTR_CODIGO , serv.OCA_CAR_CODIGO, serv.OCA_CODIGO , vin.IND_SITUACAO , vin.IND_CCUST_LOTACAO , vin.IND_HORARIO , vin.IND_OCUPACAO , vin.NRO_DIAS_ADMISSAO from agh.RAP_SERVIDORES serv inner join agh.RAP_PESSOAS_FISICAS pes on pes.codigo = serv.PES_CODIGO inner join agh.RAP_VINCULOS vin on vin.codigo = serv.vin_codigo where upper(usuario) = upper(?) and ( serv.ind_situacao = 'A' or (serv.ind_situacao = 'P' and serv.dt_fim_vinculo >= now()) )"])
/subsystem=datasources/jdbc-driver=postgresql:add(driver-name=postgresql,driver-module-name=org.postgresql,driver-class-name=org.postgresql.Driver)
/subsystem=datasources/data-source=aghu:add(use-ccm=true,jta=true,jndi-name=java:/aghuDatasource,driver-class=org.postgresql.Driver,driver-name=postgresql,user-name="ugen_aghu",password="HASH_DA_SENHA_DA_APLICACAO",connection-url=jdbc:postgresql://localhost:5432/dbaghu,new-connection-sql="select now()",min-pool-size=5,max-pool-size=50,valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker,check-valid-connection-sql="select 1",pool-prefill=true,blocking-timeout-wait-millis=40000,idle-timeout-minutes=15,share-prepared-statements=true,prepared-statements-cache-size=32,validate-on-match=true)
/subsystem=datasources/data-source=aghu/statistics=jdbc:write-attribute(name=statistics-enabled,value=true)
/subsystem=datasources/data-source=aghu:test-connection-in-pool
/subsystem=messaging/hornetq-server=default/jms-queue=laudoExamesQueue:add(entries=[queue/laudoExamesQueue,java:jboss/exported/jms/queue/laudoExamesQueue])
/subsystem=messaging/hornetq-server=default/jms-queue=examesLiberadosQueue:add(entries=[queue/examesLiberadosQueue,java:jboss/exported/jms/queue/examesLiberadosQueue])
/subsystem=messaging/hornetq-server=default/jms-queue=pendenciaAssinaturaNivel1Queue:add(entries=[queue/pendenciaAssinaturaNivel1Queue,java:jboss/exported/jms/queue/pendenciaAssinaturaNivel1Queue])
/subsystem=messaging/hornetq-server=default/jms-queue=pendenciaAssinaturaNivel2Queue:add(entries=[queue/pendenciaAssinaturaNivel2Queue,java:jboss/exported/jms/queue/pendenciaAssinaturaNivel2Queue])
/subsystem=messaging/hornetq-server=default/jms-queue=pendenciaAssinaturaNivel3Queue:add(entries=[queue/pendenciaAssinaturaNivel3Queue,java:jboss/exported/jms/queue/pendenciaAssinaturaNivel3Queue])
🇨 No servidor do wildfly, configurando standalone-full pra AD
# /opt/aghu/wildfly/bin/jboss-cli.sh -c
/subsystem=security/security-domain=EncryptAghuDBPassword:add(cache-type=default)
/subsystem=security/security-domain=EncryptAghuDBPassword/authentication=classic:add(login-modules=[{code=org.picketbox.datasource.security.SecureIdentityLoginModule,flag=required,module-options=>[user-name="ugen_aghu",password="HASH_DA_SENHA_DA_APLICACAO"]}])
/subsystem=security/security-domain=aghuConfig:add(cache-type=default)
/subsystem=security/security-domain=aghuConfig/authentication=classic:add
/subsystem=security/security-domain=aghuConfig/authentication=classic/login-module=br.gov.mec.aghu.casca.autenticacao.AghuAdLoginModule:add(code=br.gov.mec.aghu.casca.autenticacao.AghuAdLoginModule,flag=required,module-options=[dsJndiName=java:/aghuDatasource,debug=true,validarAutenticacaoNegocial="select usuario.id, usuario.login, usuario.ATIVO, ( select count(*) from casca.CSC_PERFIS_USUARIOS perfilusuario inner join casca.CSC_PERFIL perfil on perfil.id = perfilusuario.id_perfil where perfilusuario.id_usuario = usuario.id and (perfilusuario.dthr_expiracao is null or perfilusuario.dthr_expiracao > now()) and perfil.SITUACAO = 'A' ) perfilcount from CASCA.CSC_USUARIO usuario where upper(login) = upper(?)",verificarVinculoServidor="select serv.matricula, serv.vin_codigo, serv.dt_inicio_vinculo , serv.CCT_CODIGO , serv.HTR_CODIGO , serv.OCA_CAR_CODIGO, serv.OCA_CODIGO , vin.IND_SITUACAO , vin.IND_CCUST_LOTACAO , vin.IND_HORARIO , vin.IND_OCUPACAO , vin.NRO_DIAS_ADMISSAO from agh.RAP_SERVIDORES serv inner join agh.RAP_PESSOAS_FISICAS pes on pes.codigo = serv.PES_CODIGO inner join agh.RAP_VINCULOS vin on vin.codigo = serv.vin_codigo where upper(usuario) = upper(?) and ( serv.ind_situacao = 'A' or (serv.ind_situacao = 'P' and serv.dt_fim_vinculo >= now()) )"])
/subsystem=datasources/jdbc-driver=postgresql:add(driver-name=postgresql,driver-module-name=org.postgresql,driver-class-name=org.postgresql.Driver)
/subsystem=datasources/data-source=aghu:add(use-ccm=true,jta=true,jndi-name=java:/aghuDatasource,driver-class=org.postgresql.Driver,driver-name=postgresql,security-domain=EncryptAghuDBPassword,connection-url=jdbc:postgresql://localhost:5432/dbaghu,new-connection-sql="select now()",min-pool-size=5,max-pool-size=50,valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.postgres.PostgreSQLValidConnectionChecker,check-valid-connection-sql="select 1",pool-prefill=true,blocking-timeout-wait-millis=40000,idle-timeout-minutes=15,share-prepared-statements=true,prepared-statements-cache-size=32,validate-on-match=true)
/subsystem=datasources/data-source=aghu/statistics=jdbc:write-attribute(name=statistics-enabled,value=true)
/subsystem=datasources/data-source=aghu:test-connection-in-pool
/subsystem=messaging/hornetq-server=default/jms-queue=laudoExamesQueue:add(entries=[queue/laudoExamesQueue,java:jboss/exported/jms/queue/laudoExamesQueue])
/subsystem=messaging/hornetq-server=default/jms-queue=examesLiberadosQueue:add(entries=[queue/examesLiberadosQueue,java:jboss/exported/jms/queue/examesLiberadosQueue])
/subsystem=messaging/hornetq-server=default/jms-queue=pendenciaAssinaturaNivel1Queue:add(entries=[queue/pendenciaAssinaturaNivel1Queue,java:jboss/exported/jms/queue/pendenciaAssinaturaNivel1Queue])
/subsystem=messaging/hornetq-server=default/jms-queue=pendenciaAssinaturaNivel2Queue:add(entries=[queue/pendenciaAssinaturaNivel2Queue,java:jboss/exported/jms/queue/pendenciaAssinaturaNivel2Queue])
/subsystem=messaging/hornetq-server=default/jms-queue=pendenciaAssinaturaNivel3Queue:add(entries=[queue/pendenciaAssinaturaNivel3Queue,java:jboss/exported/jms/queue/pendenciaAssinaturaNivel3Queue])