SlideShare uma empresa Scribd logo
1 de 7
Baixar para ler offline
Conexão segura Mule para IBM i / AS400
Qualquer pessoa que tenha sido no fim de recepção de uma auditoria PCI sabe que
a criptografia de dados em trânsito é uma coisa sensata a fazer. É um requisito
deve ter para dados de clientes sensíveis, informações de identificação pessoal e
como regra geral deve ser aplicada por defeito a menos que haja uma razão
convincente para não. Neste artigo vou mostrar como se conectem com segurança
Mule para IBM i (AS / 400, iSeries, System i).
fluxos de mula comunicar normalmente com IBM i dados e lógica de negócios
através dos seguintes transportes:
• conector AS400 - trabalha com filas de dados e comandos do sistema
• conector de banco de dados - facilita o acesso direto a dados de aplicativos e
chamadas para procedimentos armazenados do DB2
• Outros protocolos baseados TCP (HTTP, etc FTP)
Neste artigo, vou mostrar como configurar criptografia i servidor IBM e Banco de
Dados Mule seguro e comunicações fila de dados.
IBM i é conhecida por recursos de segurança à prova de bala. A interface de
clientes remotos com o sistema através de servidores host que gerem o acesso ao
tipo específico de IBM i recursos, tais como banco de dados DB2, sistemas de
arquivos, filas de dados, etc. Os servidores Host pode ser configurado para suportar
ou exigir conexões SSL, tanto para os dados criptografia e autenticação do cliente.
Todos os servidores host podem usar o mesmo certificado ou certificados
individuais.
A fim de conectar com segurança Mule para IBM i, os certificados devem ser
configurados e aplicada a servidores host apropriado. Em caso de certificados auto-
assinados criados no IBM i, o cliente precisa confiar no certificado (s) IBM i
autoridade de certificação usada para criptografia de configuração do Host Service.
IBM Navigator para i, a ferramenta de configuração do servidor baseado em
navegador, inclui Gestor de Certificados Digitais que suporta um número de opções
de criptografia e autenticação para IBM i recursos. Para mais informações consulte
o manual de DCM.
IBM i configuração
Vamos começar com a criação e atribuição IBM i certificado para servidores host do
banco de dados e fila de dados usando o Gerenciador de Certificado Digital.
Aponte seu navegador para IBM Navigator para i em http: //
your_ibmi_server_name: 2001
Na parte inferior do menu de navegação à esquerda, selecione as opções de
ligação à Internet, em seguida, selecionar o link Gestor de Certificados Digitais
(DCM) na página principal.
Alternativamente, aponte o navegador diretamente para DCM em http: //
your_ibmi_server_name: 2001 / QIBM / ICSS / Cert / Admin / qycucm1.ndm / Main0
As telas abaixo podem ter um olhar pouco diferente e sentir dependendo IBM i
versão, mas funções essenciais permanecem as mesmas.
Click on Select Certificate Store and select *SYSTEM.
Se não há nenhuma loja * sistema disponível, crie uma clicando em Criar Novo
Certificado loja e seguir as instruções. Ao criar a loja, optar por não criar o
certificado ainda.
Criar Autoridade de Certificação novo local se não já criado. Siga as instruções para
criar uma nova CA. local Chegar à página onde o sistema pede para criar * loja
OBJECTSIGNING e pressione Cancelar.
Clique no botão Select Certificate Store novamente para voltar à loja * SYSTEM.
Agora estamos prontos para criar novo certificado para criptografar as
comunicações servidores host. Clique em Criar novo certificado servidor ou cliente,
use de autoridade de certificação local para assinatura. Siga as instruções. Na
página Aplicativos, atribuir o certificado recém-criado para os servidores que
necessitam de utilizar este certificado para conexões SSL, por exemplo servidor de
banco de dados, servidor de fila de dados, servidor de comando remoto, servidor
Signon e QIBM_HTTP_SERVER_ <http nome do servidor>. Para esta
demonstração Eu só aplicado o certificado a todos os servidores host.
Em seguida, reiniciar servidores host no IBM i para que as novas regras de
certificado terá um efeito
Instalação do cliente Mule
Grande, o nosso servidor IBM i agora suporta comunicações seguras! Em seguida,
a fim de conectar com segurança Mule para IBM i, precisamos exportar e instalar o
certificado da CA local.
No IBM i Gestor de Certificados Digitais, selecione * SYSTEM armazenamento de
certificados, em seguida, clique em Instalar Certificado de CA Local no seu PC, em
seguida, selecione Copiar e colar certificado
Copiar / colar o conteúdo do certificado em um arquivo de texto <nome do
arquivo de certificado> em seu sistema de arquivos.
Criar uma nova truststore ou certificado de importação em truststore existente
keytool -import -alias IBMICERT -file <certificate file name> -
keystore <truststore name>
Fornecer a senha loja e confirmar que esse certificado deve ser confiável.
A fim de conectar com segurança Mule para IBM i hospedar servidores via
canal criptografado, Mule JVM deve usar o truststore com certificado do IBM i.
Para implantações on-prem, o truststore podem ser salvos em qualquer lugar
no servidor de mula, e para aplicações rodando em CloudHub armazenamento
de confiança deve ser empacotado como parte da aplicação.
A maneira rápida e suja é apenas para passar truststore nome e senha como
parâmetros de inicialização JVM javax.net.ssl.trustStore e
javax.net.ssl.trustStorePassword. Esta opção pode não ser ideal para
ambientes de produção, uma vez que globalmente define o truststore para
todas as aplicações de mula destacadas para o tempo de execução on-prem,
e exigiria um monte de saltar através dos aros para implantações CloudHub.
Em vez disso, vamos importar truststore na pasta / app src / principal do nosso
aplicativo e definir o contexto SSL padrão na inicialização do aplicativo para
apontar para este truststore. Desta forma, ele vai ser consistente em on-prem
e implantações CloudHub.
Nós vamos adicionar truststore para o contexto SSL aplicativo em tempo de
inicialização usando o componente Java personalizado definido na aplicação
de mula:
<spring:beans>
<spring:bean id="SSLBean" name="SSLBean"
class="IBMiSSLDemo.CustomTrustStore">
<spring:property name="pwd" value="qqqqqq12" />
<spring:property name="path" value="${app.home}/truststore" />
</spring:bean>
</spring:beans>
A classe Java precisa implementar org.mule.api.lifecycle.Initialisable e cargas
TrustStore como contexto SSL padrão no método inicia:
public void initialise() throws InitialisationException{
try {
InputStream trustStream = new FileInputStream(path);
KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
trustStore.load(trustStream, pwd.toCharArray());
TrustManagerFactory trustFactory = TrustManagerFactory
.getInstance(TrustManagerFactory.getDefaultAlgorithm());
trustFactory.init(trustStore);
TrustManager[] trustManagers = trustFactory.getTrustManagers();
SSLContext sslContext = SSLContext.getInstance("SSL");
sslContext.init(null, trustManagers, null);
SSLContext.setDefault(sslContext);
} catch (Exception e) {
e.printStackTrace();
}
Fila de dados e Comando de encriptação de chamadas
Na maioria dos casos, os eventos que são passados através de filas de dados
contêm apenas a referência de transação. O pedido e resposta de dados reais
é encenado no banco de dados IBM i. Para cenários onde os dados sensíveis
são transmitidos através das filas ou chamadas de comando, a próxima versão
do AS400 Connector introduz nova opção de configuração
"SecureConnection". Quando definido como verdadeiro, o conector irá
criptografar os dados durante a comunicação com IBM i servidores Host. O
certificado CA usada para proteger a fila de dados e servidores Host Chamada
de comando remoto no IBM i lado deve estar disponível para o Mule JVM onde
o aplicativo é executado.
<as400:config name="AS400__Configuration_type_strategy"
endpoint="${endpoint}" userid="${userid}" password="${password}"
doc:name="AS400: Configuration type strategy" libraryList="${libl}"
secureConnection="true">
Conexão de banco de dados seguro
O caso de uso típico é para criptografar os dados em trânsito para as
operações de banco de dados de mula, incluindo leitura e gravação de dados,
bem como DB2 armazenado chamadas de procedimento. Para habilitar a
conexão banco de dados seguro, adicione parâmetro jdbc seguro =
true:jdbc:as400://<ibm i server name>/<default library name>;secure=true
Assim como na configuração do conector AS400, mula deve carregar o certificado
CA confiável para IBM i servidor de banco de dados do host.
Para verificar se Mule se conecta ao IBM i através de uma ligação segura, procure
QZDASSINIT emprego no subsistema QUSRWRK, que lida com conexão SSL DB,
ao contrário de QZDASOINIT canal texto claro:
Para recapitular, estamos habilitados a criptografia SSL para IBM i hospedar
servidores usando o Gerenciador de Certificado Digital, conector AS400 Mule, em
seguida, configurado e conector de banco de dados para comunicar através do
canal criptografado. Agora podemos conectar com segurança Mule para IBM i /
servidor As400 para banco de dados, filas de dados, chamada de comando remoto,
e outras comunicações com base TCP.

Mais conteúdo relacionado

Mais de Jeison Barros

Como criar um http proxy dinamico com mule parte 1
Como criar um http proxy dinamico com mule   parte 1Como criar um http proxy dinamico com mule   parte 1
Como criar um http proxy dinamico com mule parte 1Jeison Barros
 
Conectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbcConectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbcJeison Barros
 
Habilidades necessárias para integrar aplicativos e dados
Habilidades necessárias para integrar aplicativos e dadosHabilidades necessárias para integrar aplicativos e dados
Habilidades necessárias para integrar aplicativos e dadosJeison Barros
 
Qual integration framework você deve usar parte 2
Qual integration framework você deve usar parte 2Qual integration framework você deve usar parte 2
Qual integration framework você deve usar parte 2Jeison Barros
 
Qual integration framework você deve usar parte 1
Qual integration framework você deve usar parte 1Qual integration framework você deve usar parte 1
Qual integration framework você deve usar parte 1Jeison Barros
 
Consumindo soap wsdl
Consumindo soap wsdlConsumindo soap wsdl
Consumindo soap wsdlJeison Barros
 
Trabalhando com anexos soap usando módulo cxf do mule
Trabalhando com anexos soap usando módulo cxf do muleTrabalhando com anexos soap usando módulo cxf do mule
Trabalhando com anexos soap usando módulo cxf do muleJeison Barros
 
Começando com mulesoft e maven
Começando com mulesoft e mavenComeçando com mulesoft e maven
Começando com mulesoft e mavenJeison Barros
 
Estudo de caso: Mule como um transporte JMS Comum
Estudo de caso: Mule como um transporte JMS ComumEstudo de caso: Mule como um transporte JMS Comum
Estudo de caso: Mule como um transporte JMS ComumJeison Barros
 
Mule esb com framework cucumber part 1
Mule esb com framework cucumber part 1Mule esb com framework cucumber part 1
Mule esb com framework cucumber part 1Jeison Barros
 
Mule esb com framework cucumber part 2
Mule esb com framework cucumber part 2Mule esb com framework cucumber part 2
Mule esb com framework cucumber part 2Jeison Barros
 
Explorando mule esb sftp adapter
Explorando mule esb sftp adapterExplorando mule esb sftp adapter
Explorando mule esb sftp adapterJeison Barros
 
Fluxo dinâmicos usando spring aplication
Fluxo dinâmicos usando spring aplicationFluxo dinâmicos usando spring aplication
Fluxo dinâmicos usando spring aplicationJeison Barros
 
Data mapping com Groovy - Part 2
Data mapping com Groovy - Part 2Data mapping com Groovy - Part 2
Data mapping com Groovy - Part 2Jeison Barros
 
Relatório analytics de mula tempo de execução usando splunk
Relatório analytics de mula tempo de execução usando splunkRelatório analytics de mula tempo de execução usando splunk
Relatório analytics de mula tempo de execução usando splunkJeison Barros
 
Substituindo o request message no mule
Substituindo o request message no muleSubstituindo o request message no mule
Substituindo o request message no muleJeison Barros
 
Mule esb teste parte 2
Mule esb teste   parte 2Mule esb teste   parte 2
Mule esb teste parte 2Jeison Barros
 
Mule esb teste parte 1
Mule esb teste   parte 1Mule esb teste   parte 1
Mule esb teste parte 1Jeison Barros
 
Introdução ao mule esb para iniciantes
Introdução ao mule esb para iniciantesIntrodução ao mule esb para iniciantes
Introdução ao mule esb para iniciantesJeison Barros
 

Mais de Jeison Barros (20)

Como criar um http proxy dinamico com mule parte 1
Como criar um http proxy dinamico com mule   parte 1Como criar um http proxy dinamico com mule   parte 1
Como criar um http proxy dinamico com mule parte 1
 
Rest api vs SOAP
Rest api vs SOAPRest api vs SOAP
Rest api vs SOAP
 
Conectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbcConectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbc
 
Habilidades necessárias para integrar aplicativos e dados
Habilidades necessárias para integrar aplicativos e dadosHabilidades necessárias para integrar aplicativos e dados
Habilidades necessárias para integrar aplicativos e dados
 
Qual integration framework você deve usar parte 2
Qual integration framework você deve usar parte 2Qual integration framework você deve usar parte 2
Qual integration framework você deve usar parte 2
 
Qual integration framework você deve usar parte 1
Qual integration framework você deve usar parte 1Qual integration framework você deve usar parte 1
Qual integration framework você deve usar parte 1
 
Consumindo soap wsdl
Consumindo soap wsdlConsumindo soap wsdl
Consumindo soap wsdl
 
Trabalhando com anexos soap usando módulo cxf do mule
Trabalhando com anexos soap usando módulo cxf do muleTrabalhando com anexos soap usando módulo cxf do mule
Trabalhando com anexos soap usando módulo cxf do mule
 
Começando com mulesoft e maven
Começando com mulesoft e mavenComeçando com mulesoft e maven
Começando com mulesoft e maven
 
Estudo de caso: Mule como um transporte JMS Comum
Estudo de caso: Mule como um transporte JMS ComumEstudo de caso: Mule como um transporte JMS Comum
Estudo de caso: Mule como um transporte JMS Comum
 
Mule esb com framework cucumber part 1
Mule esb com framework cucumber part 1Mule esb com framework cucumber part 1
Mule esb com framework cucumber part 1
 
Mule esb com framework cucumber part 2
Mule esb com framework cucumber part 2Mule esb com framework cucumber part 2
Mule esb com framework cucumber part 2
 
Explorando mule esb sftp adapter
Explorando mule esb sftp adapterExplorando mule esb sftp adapter
Explorando mule esb sftp adapter
 
Fluxo dinâmicos usando spring aplication
Fluxo dinâmicos usando spring aplicationFluxo dinâmicos usando spring aplication
Fluxo dinâmicos usando spring aplication
 
Data mapping com Groovy - Part 2
Data mapping com Groovy - Part 2Data mapping com Groovy - Part 2
Data mapping com Groovy - Part 2
 
Relatório analytics de mula tempo de execução usando splunk
Relatório analytics de mula tempo de execução usando splunkRelatório analytics de mula tempo de execução usando splunk
Relatório analytics de mula tempo de execução usando splunk
 
Substituindo o request message no mule
Substituindo o request message no muleSubstituindo o request message no mule
Substituindo o request message no mule
 
Mule esb teste parte 2
Mule esb teste   parte 2Mule esb teste   parte 2
Mule esb teste parte 2
 
Mule esb teste parte 1
Mule esb teste   parte 1Mule esb teste   parte 1
Mule esb teste parte 1
 
Introdução ao mule esb para iniciantes
Introdução ao mule esb para iniciantesIntrodução ao mule esb para iniciantes
Introdução ao mule esb para iniciantes
 

Conexão segura Mule para IBM i / AS400

  • 1. Conexão segura Mule para IBM i / AS400 Qualquer pessoa que tenha sido no fim de recepção de uma auditoria PCI sabe que a criptografia de dados em trânsito é uma coisa sensata a fazer. É um requisito deve ter para dados de clientes sensíveis, informações de identificação pessoal e como regra geral deve ser aplicada por defeito a menos que haja uma razão convincente para não. Neste artigo vou mostrar como se conectem com segurança Mule para IBM i (AS / 400, iSeries, System i). fluxos de mula comunicar normalmente com IBM i dados e lógica de negócios através dos seguintes transportes: • conector AS400 - trabalha com filas de dados e comandos do sistema • conector de banco de dados - facilita o acesso direto a dados de aplicativos e chamadas para procedimentos armazenados do DB2 • Outros protocolos baseados TCP (HTTP, etc FTP) Neste artigo, vou mostrar como configurar criptografia i servidor IBM e Banco de Dados Mule seguro e comunicações fila de dados. IBM i é conhecida por recursos de segurança à prova de bala. A interface de clientes remotos com o sistema através de servidores host que gerem o acesso ao tipo específico de IBM i recursos, tais como banco de dados DB2, sistemas de arquivos, filas de dados, etc. Os servidores Host pode ser configurado para suportar ou exigir conexões SSL, tanto para os dados criptografia e autenticação do cliente. Todos os servidores host podem usar o mesmo certificado ou certificados individuais. A fim de conectar com segurança Mule para IBM i, os certificados devem ser configurados e aplicada a servidores host apropriado. Em caso de certificados auto- assinados criados no IBM i, o cliente precisa confiar no certificado (s) IBM i autoridade de certificação usada para criptografia de configuração do Host Service. IBM Navigator para i, a ferramenta de configuração do servidor baseado em navegador, inclui Gestor de Certificados Digitais que suporta um número de opções de criptografia e autenticação para IBM i recursos. Para mais informações consulte o manual de DCM. IBM i configuração
  • 2. Vamos começar com a criação e atribuição IBM i certificado para servidores host do banco de dados e fila de dados usando o Gerenciador de Certificado Digital. Aponte seu navegador para IBM Navigator para i em http: // your_ibmi_server_name: 2001 Na parte inferior do menu de navegação à esquerda, selecione as opções de ligação à Internet, em seguida, selecionar o link Gestor de Certificados Digitais (DCM) na página principal. Alternativamente, aponte o navegador diretamente para DCM em http: // your_ibmi_server_name: 2001 / QIBM / ICSS / Cert / Admin / qycucm1.ndm / Main0 As telas abaixo podem ter um olhar pouco diferente e sentir dependendo IBM i versão, mas funções essenciais permanecem as mesmas. Click on Select Certificate Store and select *SYSTEM.
  • 3. Se não há nenhuma loja * sistema disponível, crie uma clicando em Criar Novo Certificado loja e seguir as instruções. Ao criar a loja, optar por não criar o certificado ainda. Criar Autoridade de Certificação novo local se não já criado. Siga as instruções para criar uma nova CA. local Chegar à página onde o sistema pede para criar * loja OBJECTSIGNING e pressione Cancelar. Clique no botão Select Certificate Store novamente para voltar à loja * SYSTEM. Agora estamos prontos para criar novo certificado para criptografar as comunicações servidores host. Clique em Criar novo certificado servidor ou cliente, use de autoridade de certificação local para assinatura. Siga as instruções. Na página Aplicativos, atribuir o certificado recém-criado para os servidores que necessitam de utilizar este certificado para conexões SSL, por exemplo servidor de banco de dados, servidor de fila de dados, servidor de comando remoto, servidor Signon e QIBM_HTTP_SERVER_ <http nome do servidor>. Para esta demonstração Eu só aplicado o certificado a todos os servidores host. Em seguida, reiniciar servidores host no IBM i para que as novas regras de certificado terá um efeito Instalação do cliente Mule Grande, o nosso servidor IBM i agora suporta comunicações seguras! Em seguida, a fim de conectar com segurança Mule para IBM i, precisamos exportar e instalar o certificado da CA local. No IBM i Gestor de Certificados Digitais, selecione * SYSTEM armazenamento de certificados, em seguida, clique em Instalar Certificado de CA Local no seu PC, em seguida, selecione Copiar e colar certificado
  • 4. Copiar / colar o conteúdo do certificado em um arquivo de texto <nome do arquivo de certificado> em seu sistema de arquivos. Criar uma nova truststore ou certificado de importação em truststore existente keytool -import -alias IBMICERT -file <certificate file name> - keystore <truststore name> Fornecer a senha loja e confirmar que esse certificado deve ser confiável. A fim de conectar com segurança Mule para IBM i hospedar servidores via canal criptografado, Mule JVM deve usar o truststore com certificado do IBM i. Para implantações on-prem, o truststore podem ser salvos em qualquer lugar no servidor de mula, e para aplicações rodando em CloudHub armazenamento de confiança deve ser empacotado como parte da aplicação. A maneira rápida e suja é apenas para passar truststore nome e senha como parâmetros de inicialização JVM javax.net.ssl.trustStore e javax.net.ssl.trustStorePassword. Esta opção pode não ser ideal para
  • 5. ambientes de produção, uma vez que globalmente define o truststore para todas as aplicações de mula destacadas para o tempo de execução on-prem, e exigiria um monte de saltar através dos aros para implantações CloudHub. Em vez disso, vamos importar truststore na pasta / app src / principal do nosso aplicativo e definir o contexto SSL padrão na inicialização do aplicativo para apontar para este truststore. Desta forma, ele vai ser consistente em on-prem e implantações CloudHub. Nós vamos adicionar truststore para o contexto SSL aplicativo em tempo de inicialização usando o componente Java personalizado definido na aplicação de mula: <spring:beans> <spring:bean id="SSLBean" name="SSLBean" class="IBMiSSLDemo.CustomTrustStore"> <spring:property name="pwd" value="qqqqqq12" /> <spring:property name="path" value="${app.home}/truststore" /> </spring:bean> </spring:beans> A classe Java precisa implementar org.mule.api.lifecycle.Initialisable e cargas TrustStore como contexto SSL padrão no método inicia: public void initialise() throws InitialisationException{ try { InputStream trustStream = new FileInputStream(path); KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType()); trustStore.load(trustStream, pwd.toCharArray()); TrustManagerFactory trustFactory = TrustManagerFactory .getInstance(TrustManagerFactory.getDefaultAlgorithm()); trustFactory.init(trustStore); TrustManager[] trustManagers = trustFactory.getTrustManagers(); SSLContext sslContext = SSLContext.getInstance("SSL");
  • 6. sslContext.init(null, trustManagers, null); SSLContext.setDefault(sslContext); } catch (Exception e) { e.printStackTrace(); } Fila de dados e Comando de encriptação de chamadas Na maioria dos casos, os eventos que são passados através de filas de dados contêm apenas a referência de transação. O pedido e resposta de dados reais é encenado no banco de dados IBM i. Para cenários onde os dados sensíveis são transmitidos através das filas ou chamadas de comando, a próxima versão do AS400 Connector introduz nova opção de configuração "SecureConnection". Quando definido como verdadeiro, o conector irá criptografar os dados durante a comunicação com IBM i servidores Host. O certificado CA usada para proteger a fila de dados e servidores Host Chamada de comando remoto no IBM i lado deve estar disponível para o Mule JVM onde o aplicativo é executado. <as400:config name="AS400__Configuration_type_strategy" endpoint="${endpoint}" userid="${userid}" password="${password}" doc:name="AS400: Configuration type strategy" libraryList="${libl}" secureConnection="true"> Conexão de banco de dados seguro O caso de uso típico é para criptografar os dados em trânsito para as operações de banco de dados de mula, incluindo leitura e gravação de dados, bem como DB2 armazenado chamadas de procedimento. Para habilitar a conexão banco de dados seguro, adicione parâmetro jdbc seguro = true:jdbc:as400://<ibm i server name>/<default library name>;secure=true Assim como na configuração do conector AS400, mula deve carregar o certificado CA confiável para IBM i servidor de banco de dados do host.
  • 7. Para verificar se Mule se conecta ao IBM i através de uma ligação segura, procure QZDASSINIT emprego no subsistema QUSRWRK, que lida com conexão SSL DB, ao contrário de QZDASOINIT canal texto claro: Para recapitular, estamos habilitados a criptografia SSL para IBM i hospedar servidores usando o Gerenciador de Certificado Digital, conector AS400 Mule, em seguida, configurado e conector de banco de dados para comunicar através do canal criptografado. Agora podemos conectar com segurança Mule para IBM i / servidor As400 para banco de dados, filas de dados, chamada de comando remoto, e outras comunicações com base TCP.