Mostrando postagens com marcador Weblogic. Mostrar todas as postagens
Mostrando postagens com marcador Weblogic. Mostrar todas as postagens

segunda-feira, 1 de maio de 2017

Consumindo serviço com Client Authentication no OSB 11g

Neste post irei demonstrar como consumir serviço que exija a configuração de "client authentication" (SSL Two way).
Os passos para fazer o import do certificado com chave publica se encontra no meu post "Weblogic and Wildcard SSL certificate".
Vamos configurar um JKS para nosso certificado com a chave privada para a autenticação.

Passos:

1-) Gerar um JKS com a chave privada:

keytool -importkeystore -srckeystore myPrivateKey.p12 -srcstoretype pkcs12 -destkeystore clientAuth.jks -deststoretype jks


Listar o certificado que foi importado:

keytool -list -storepass mystorepass -keystore clientAuth.jks



Altere o alias:

keytool -changealias -alias "imported certificate" -destalias "myPrivatekey" -keystore clientAuth.jks -storepass mystorepass




2-) Configurar um "PKI Credential Mapper"

  • Faça login no console do Weblogic
    Vá em Security Realms -> myrealm -> Providers -> Credential Mapping
  • Click em "new"


Preencha o campo "Name" e em "Type" selecione "PKICredentialMapper"


Click em "OK"

Click em "PKICredentialMapper"


Click na aba "Provider Specific"

Prencha os campos:
Keystore File Name: <PATH DO JKS GERADO>/clientAuth.jks
Keystore Pass Phrase: mystorepass
Confirm Keystore Pass Phrase: mystorepass



Click em "Save" e faça restart no server.

3-) Configurações no sbconsole: 

Obs: As configurações que irei demonstrar a seguir podem ser feito no OEPE.

Criando um Service Key Provider





Em SSL Client Authentication Key click em "Browser"

   

No campo password preencha com a senha da chave privada e não do JKS.

 Click em "Save"

Configure o Business Service para usar "Client Authentication"


Altere o Proxy Service para utilizar o Service Key Provider que criamos, vá no proxy e selecione a aba "Security"  

 

Quando executar o serviço, verá na variável inbound o provider.

Weblogic and Wildcard SSL certificate

Recentemente tive problemas ao consumir um serviço via https no OSB 11g, onde o certificado digital deste serviço possui "*.dominio.com" (wildcard).

Irei demonstrar as configurações necessárias para o correto funcionamento no Weblogic.

Caso esteja utilizando a versão 10.3.6 do Weblogic, aconselho que instale o patch mais recente para a versão. (No caso deste post, o ultimo é o 25388747  - Oracle Support)

Passos:

1-) Importar o certificado publico.

keytool -import -v -noprompt -trustcacerts -alias <ALIAS DO CERTIFICADO> -file <DIR_CERTIFICADO>/certficado.cer|.crt -keystore {HOME_OSB}/{WL_HOME}/server/lib/DemoTrust.jks -storepass <PassPhrase>

2-) No console:

Vá em Environment -> Servers -> AdminServer(caso tenha alterado o nome do default, escolha o seu server)
escolha a aba "SSL"





3-) Clique em "Advanced"

Configure os campos conforme abaixo:

Hostname Verification: Custom Hostname Verifier
Custom Hostname Verifier: weblogic.security.utils.SSLWLSWildcardHostnameVerifier
Use JSSE SSL: TRUE




4-) Click em "Save" e faça o restart do seu server.

Se habilitar o log para SSL verá as seguintes saidas, mostrando que esta sendo utilizado a configuração que foi efetuada.


Para habilitar o log, altere o arquivo setDomainEnv.sh com os parametros abaixo:

JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.debug.DebugSecuritySSL=true -Dweblogic.debug.DebugSSL=true -Dweblogic.StdoutDebugEnabled=true -Dweblogic.log.StdoutSeverityLevel=Debug -Dweblogic.log.LogSeverity=Debug"
export JAVA_OPTIONS


quinta-feira, 22 de janeiro de 2015

Como recuperar a senha criptografada no Weblogic

Muitas vezes esquecemos a senha do usuário administrador do domínio ou dos usuários que estão configurados no Data Source e no keystore. Nos passos abaixo irei demonstrar como recuperar a senha.

Passos:

1-) Crie o arquivo descriptografar_senha.py em $DOMAIN_HOME com o trecho de código abaixo:

from weblogic.security.internal import *
from weblogic.security.internal.encryption import *
encryptionService = SerializedSystemIni.getEncryptionService(".")
clearOrEncryptService = ClearOrEncryptedService(encryptionService)

pwd = raw_input("Cole a senha criptografada ({AES}Al9yx...): ")

preppwd = pwd.replace("\\", "")

print "Resultado: " + clearOrEncryptService.decrypt(preppwd)

2-) Para recuperar a senha do administrador vá em $DOMAIN_HOME/servers/AdminServer/security e abra o arquivo boot.properties com um editor de texto e copie a string do password

3-) Execute na linha de comando:

cd $DOMAIN_HOME
. ./bin/setDomainEnv.sh
java weblogic.WLST descriptografar_senha.py

4-) Cole a senha copiada no passo 2 e veja a senha descriptografada

quarta-feira, 14 de maio de 2014

Console Extension no SOA Suite 11g

O Console Extension é uma ferramenta que nos prove relatórios em tempo real e monitoração de métricas que podem ser configuradas manualmente no WebLogic Diagnostic Framework (WLDF). O Console Extension vem na instalação do Weblogic, vamos ver como instalar e configurar metricas.

Copie o jar diagnostics-console-extension.jar que se encontra em <WL_HOME>\server\lib\console-ext para o diretório <DOMAIN_HOME>/console-ext.

exemplo de comando no linux:
cp <WL_HOME>\server\lib\console-ext <DOMAIN_HOME>/console-ext

inicio o seu dominio, ao logar no console verá a aba "WLDF Console Extension"


Clique na aba e verá um descritivo do Console Extension e pedindo para acessar a URL http://hostname:port/console/dashboard


Abra a URL http://localhost:7001/console/dashboard e verá a seguinte tela:


Em "Built-in Views" temos já pré-configurados 3 views:

JVM Runtime
JVM Runtime Heap
Thread Pool Runtime

Selecione a view "JVM Runtime Heap" e clique no botão "Start" (está em verde) e deixe executando por um tempo para coleta, e verá algo parecido como a seguinte tela:

  

Configurando Métricas

Logue no console e clique em "Diagnostic Modules" que se encontra no grupo "Diagnostic"


Clique em "Module-FMWDFW"


Clique na aba "Collected Metrics"


Clique em "New" e depois em "Next", aceitando o valor default em "MBean Server location"


Em "MBean Type" escolha "soainfra_message_processing"  e clique em "Next"


Escolha as opções "requestProcessingTime_avg", "requestProcessingTime_maxTime" e "requestProcessingTime_minTime" e clique em "Next"


Seleciona a opção "oracle.dms.name=/soainfra/engines/message_processing/bpel" e clique em "Finish"


Configurando uma View no Dashboard

Volte ao dashboard (http://hostname:port/console/dashboard) em "View List" clique em "New View", vai aparecer em "My View" uma caixa de texto, preencha com "Message Processing"


Vá em "Metric Browser" e execute os passo a baixo:
Selecione o checkbox "Collected Metrics Only"
Irá aparecer "soainfra_message_processing" em "Types" e selecione o mesmo
Clique na seta ao lado do titulo e selecione "New Chart"



Em "Instance" selecione "oracle.dms.name=/soainfra/engines/message_processing/bpel"
Em "Metrics", selecione "requestProcessingTime_avg"
Clique na seta ao lado do titulo e selecione "Add Metric"
Faça o mesmo para as outras duas metricas


Clique em "Start" e rode alguns composites, apó isso verá algo parecido com a tela abaixo:


Pode ser configurados metricas para MDS, ADF, etc... todos disponivel em MBean type.