Histórico da Página
...
>keytool -exportcert -alias keystore -file " c:/totvs/jboss-4.2.3.GA/server/default/conf /server.cer" -keystore "server.keystore" -storepass medical
| Âncora | ||||
|---|---|---|---|---|
|
Cada cliente autorizado a receber ou enviar mensagens através dos Web Services, deve fornecer seu arquivo de certificado pra ser adicionado à lista de clientes confiáveis (truststore).
...
- alias: Crie um alias para seu arquivo de armazenamento de certificados de clientes válidos, esse nome será usado internamente. O valor padrão é “client_truststore”.
- clientcertificado-certificatecliente: Caminho completo onde se encontra o arquivo certificado do cliente, este certificado será adicionado à lista de confiáveis;
- senha-cliente: Senha do arquivo de certificado do cliente.
- keystore: Caminho ou diretório onde serão criados o certificado, o arquivo contenedor de certificados, e o arquivo contenedor dos certicados válidos de clientes. Valor padrão é “c:/totvs/jboss-4.2.3.GA/server/default/conf”.
- storepass: Senha para o arquivo contenedor dos certificados válidos de clientes. Valor padrão é “medical”.
...
O proximo passo é copiar os arquivos server.keystore e server.truststore, para o diretório JBOSS_HOME/server/default/conf.
Configuração de Segurança no Servidor de Aplicações
| Âncora | ||||
|---|---|---|---|---|
|
Para consumir serviços protegidos numa conexão HTTPS, é necessário que o Foundation Saúde reconheça a autenticidade do servidor, do contrário ocorrerão erros de handshake, processo de reconhecimento entre as partes, como os seguintes:
- No trusted certificate found;
- Time out;
Essa configuração é realizada através da importação de algum certificado disponibilizado pelo servidor na lista de certificados confiáveis (truststore). Para realizar essa importação, deve-se executar a seguinte linha de comando (cmd):
keytool -import -trustcacerts -alias server_truststore -file “certificado-cliente" -keystore “JBOSS_HOME/server/default/conf/truststore.truststore” -storepass medical -noprompt
- alias: Crie um alias para seu arquivo de armazenamento de certificados de clientes válidos, esse nome será usado internamente. O valor padrão é “client_truststore”.
- certificado-cliente: Caminho completo onde se encontra o arquivo certificado do cliente, este certificado será adicionado à lista de confiáveis;
- senha-cliente: Senha do arquivo de certificado do cliente.
- keystore: Caminho ou diretório onde serão criados o certificado, o arquivo contenedor de certificados, e o arquivo contenedor dos certicados válidos de clientes. Valor padrão é “c:/totvs/jboss-4.2.3.GA/server/default/conf”.
- storepass: Senha para o arquivo contenedor dos certificados válidos de clientes. Valor padrão é “medical”.
Exemplo de importação dos certificados:
- Importando certificado do cliente no servidor: >keytool -import -truststore -alias clientlocal -file "client.cer" -keystore "server.truststore" -storepass medical -noprompt
| Âncora | ||||
|---|---|---|---|---|
|
A seguir são mostrados os passos para habilitar e desabilitar o uso do certificado digital. Por padrão algumas configurações A seguir são mostrados os passos para habilitar e desabilitar o uso do certificado digital. Por padrão algumas configurações estão comentadas para os sistemas não utilizam o certificado digital para TISS e SIB. Caso o cliente utilize os módulos SIB e TISS sem certificado, será necessário fazer as configurações da seção 8.6.2.
...
No diretório JBOSS_HOME/server/default/conf, a partir do diretório de instalação do "JBOSS AS," é é preciso verificar a configuração de alguns arquivos:
...
No arquivo jboss-service.
...
xml: comentar a tag “mbean” de segurança, conforme mostrado abaixo:
<!-- ... --> <!-- <mbean code="org.jboss.security.plugins.JaasSecurityDomain" name="jboss.web:service=SecurityDomain"> <constructor> <arg type="java.lang.String" value="JBossWS-SSL"/> </constructor> <attribute name="KeyStoreURL"> ${jboss.server.home.dir}/conf/keystore.keystore </attribute> <attribute name="KeyStorePass"><senha-keystore></attribute> <attribute name="TrustStoreURL"> ${jboss.server.home.dir}/conf/truststore.truststore </attribute> <attribute name="TrustStorePass"><senha-truststore></attribute> <depends>jboss.security:service=JaasSecurityManager</depends> </mbean> --> <!-- ... --> |
...
No arquivo login-config.
...
xml, comentar a tag “application-police”, conforme mostrado abaixo:
<!-- ... --> <!-- <application-policy name="JBossWS-Secure"> <authentication> <login-module code="org.jboss.security.auth.spi.BaseCertLoginModule" flag="required"> <module-option name="password-stacking">useFirstPass</module-option> <module-option name="securityDomain">java:/jaas/JBossWS-SSL</module-option> <module-option name="verifier"> org.jboss.security.auth.certs.AnyCertVerifier </module-option> </login-module> </authentication> </application-policy> --> <!-- ... -->
|
...
No diretório JBOSS_HOME/server/default/
...
deploy deve-se retirar ou comentar as propriedades abaixo do arquivo “properties-service.xml”
...
:
<server> <!-- ... --> <mbean code="org.jboss.varia.property.SystemPropertiesService" name="jboss:type=Service,name=SystemProperties"> <!-- ... --> <attribute name="Properties"> <!-- javax.net.ssl.trustStore=<caminho-truststore> --> </attribute> <!-- ... --> </mbean> <!-- ... --> </server> |
...
No diretório JBOSS_HOME/server/default/deploy/
...
jboss-web-deployer, deve-se comentar ou retirar a tag Connector referente ao serviço "jboss.web" do arquivo “server.xml”
...
, conforme mostrado abaixo:
<Server> <!-- ... --> <Service name="jboss.web"> <!-- <Connector port="<porta-ssl>" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" keystoreFile="<caminho>/keystore.keystore" keystorePass="<senha-keystore>" clientAuth="want" sslProtocol="TLS" truststoreFile="<caminho>/truststore.truststore" truststorePass="<senha-truststore>"/> --> </Service> </Server> |
...
No diretório JBOSS_HOME/server/default/deploy/jbossws.sar/jbossws.beans/META-
...
INF, deve-se retirar ou comentar as propriedades abaixo do arquivo “jboss-beans.xml”
...
:
<deployment ... > <!-- ... --> <bean name="WSServerConfig" class="org.jboss.wsf.stack.jbws.NativeServerConfig"> <!-- <property name="webServiceSecurePort"><porta-ssl></property> --> </bean> <!-- ... --> <deployment> |