logo
  • Home
  • Acerca
  • Autores
  • Faq
  • Rede
  Twitter   Feed-me! RSS!

Configurando HTTPS no BlazeDs utilizando JBoss/Tomcat

Colocado por João Augusto na(s) categoria(s): 1, 4, 6, AMF, app, AR, arte, Artigo, AUG, BI, Blazeds, blog, class, classe, classes, Cookbook, dados, DRE, exemplo, Flex, for, ide, IE, image, int, Java, Messaging, mg, O, on, padrão, Password, problema, pt, Remoting, rest, RIA, Ria’s Geral, server, servidor, ssl, Sun, swf, tag, UI, web, XML, XP em 02 19th, 2010 | Sem comentários

ctrxwt4De pouco adianta uma aplicação com restrições de acesso se o transporte dos dados entre Java e Flex é inseguro. Para fazer com que os dados sejam transportados de forma segura, é necessário configurar o BlazeDS e seu servidor de aplicação/container web para realizar conexões HTTPS, e isso é, com certeza, muita mais simples do que você possa imaginar.

Considerando que sua aplicação já está rodando, vamos pôr a mão na massa.

Primeiro de tudo: services-config.xml. Dentro da tag “channels” você deve definir mais um canal, dessa vez usando as classes responsáveis por transportar dados sobre HTTPS:

<channel-definition id="my-secure-amf" class="mx.messaging.channels.SecureAMFChannel">
	<endpoint url="https://{server.name}:9100/dev/messagebroker/amfsecure" class="flex.messaging.endpoints.SecureAMFEndpoint"/>
</channel-definition>

Após isso, você deve configurar ambos remoting-config.xml e proxy-config.xml para usar como padrão o novo canal que você acabou de criar, subtituindo a propriedade “ref” de “channel”, que antes era my-amf, por my-secure-amf:

<default-channels>
	<channel ref="my-secure-amf"/>
<default-channels>

Pronto! Na parte Flex as alterações eram essas, agora é a vez de configurar o servidor alterando o arquivo server.xml, que no JBoss fica sob o diretório:

jboss/server/default/deploy/jboss-web.deployer

E no Tomcat, sob:

tomcat/conf

Você irá encontrar duas tags mais ou menos assim:

<Connector port="8080" address="${jboss.bind.address}"
maxThreads="250" maxHttpHeaderSize="8192"
emptySessionPath="true" protocol="HTTP/1.1"
enableLookups="false" redirectPort="443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />

<!--<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
address="${jboss.bind.address}" maxThreads="150" scheme="https"
secure="true" clientAuth="false" sslProtocol="TLS" />-->

Já deu pra entender como funciona, não? Tudo bem, eu explico mesmo assim. A tag descomentada é a que você usa hoje, acessando sua aplicação através de, por exemplo, http://localhost:8080. Descomentando o connector que usa a porte 443 (e descomentando a de cima, claro) você dirá ao servidor “olá! a partir de agora você só vai conversar pela porta 443 para que ninguém entenda o que estamos falando”.

Só tem um problema, o servidor precisa de uma chave pública para criptografar os dados que serão transmitidos. Levando em consideração que você já a tenha, vamos prosseguir, caso contrário leia o artigo Creating a keystore file and keystore password for HTTPS connections, da Sun.

Com a chave em mãos vamos completar nosso connector, do arquivo server.xml, com as propriedades keystoreFile e keystorePass:

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
	address="${jboss.bind.address}" maxThreads="150" scheme="https"
	secure="true" clientAuth="false" sslProtocol="TLS"
	keystoreFile="C:/my-key.keystore" keystorePass="my-key-pass"/>

Feito isso, é só reiniciar o servidor, recompilar seu SWF e acessar seu endereço, substituindo http por https. Se você for utilizar a porta 443 não há necessidade de usar “:443″, caso você deseje alterar a porta para, por exemplo “:8443″ deverá deixá-la explícita na URL.



Veja o post original no blog do autor aqui!  

João Augusto

Escrito por João Augusto @ http://blog.joaoaugusto.com.br
Saiba mais sobre o autor na sua pagina de perfil
Outros posts do autor:
» Eclipse Plugin para identificar assets não usados
» Missing MSVCR71.dll ao dar copylocale no Windows 7
» Configurando HTTPS no BlazeDs utilizando JBoss/Tomcat

Deixe um comentário



Spam Protection by WP-SpamFree

ACERCA

O que é o RedeRIA ?

O redeRIA não é nada mais que um agregador de feed's que disponibiliza o conteudo de varios blogs e autores ao redor do mundo RIA, actualmente agregamos mais de 2790 entradas vindas de 53 blogs especializados em ria’s, pelo que só fica a ganhar em assinar o feed ou seguir a comunidade no twitter.

Se acha que o seu blog ou um blog de um amigo é interessante e util para os leitores o redeRIA, faça a sua submissão aqui.

Feed: assine já
Twitter: siga-nos

GOOGLE

Votação


Deveria o RedeRia agregar conteúdo em inglês?
Ver Resultados

AUTORES


Eduardo KrausAlexandre TadashiBindableCognitiva SoluçõesDaniel LopesDaniel SchmitzDanielPedrinhaDClick TeamEbercomEdgard DavidsonElvis FernandesErko BrideeFabiel PrestesFábio Batista da SilvaFabio da SilvaFabriccio BernardesFelipe BorellaFlavia MoreiraGabriel VersalliniGabriela T. PerryIgor MusardoJanderson CardosoJoão AugustoJose Carlos FielKelps SousaLeonardo FrançaLucas MarçalLuis MessiasLuiz TarabalMario JuniorMário SantosMauro MartinsPablo SouzaPedro ClaudioreneRia BrazilriaPTRicardo CerqueiraRobson FernandesRodrigo Pereira FragaSaintBrSamuelFacchinelloSergio SouzaSilva DeveloperStefan HorochovecTech CaffeTecinforThiago BuenoVedVinícius SandimWillian ManoXAML Cast

PUBLICIDADE








Powered by Wordpress & msdevstudio.com