Galera, tenho um webservice rodando no Tomcat 9 num windows server 2016, porém preciso adicionar um certificado SSL para que o webservice possa ser consumido em HTTPS.
Já gerei um certificado próprio usando o keytool do java com o comando no terminal:
keytool -genkey -alias tomcat -keyalg RSA
E em seguida configurando as informações necessárias e adicionando nas configurações em server.xml do tomcat:
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443"
maxThreads="200"
scheme="https"
secure="true"
SSLEnabled="true"
keystoreFile="{user}/.keystore"
keystorePass="mypass123"
clientAuth="false"
sslProtocol="TLS" />
E adicionando no web.xml do projeto java as informações para acessar usando HTTPS:
<!-- inicio - forçar a utilização de SSL -->
<security-constraint>
<web-resource-collection>
<web-resource-name>securedapp</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<!-- fim - forçar a utilização de SSL -->
Eu consigo acessar o webservice no navegador do próprio servidor e aparece como não seguro.
Porém no site onde o webservice é consumido, aparece que o servidor enviou uma resposta inválida.
Eu sei que é porque o site já usa o HTTPS mas o webservice não.
A questão é: eu tenho um certificado válido, pago, rodando no site… como eu adiciono esse certificado no tomcat/servidor/webservice para meu serviço também rodar em HTTPS?