Leo,
Trabalhar com SSL e criptografia é um assunto bastante complexo com
diversas variáveis, e que com certeza
não conseguirei abordar em um único post. No entanto tentarei aqui
transmitir-lhe os primeiros passos.
Basicamente você deverá seguir 4 passos:
1 - Gerar um chave criptografada
2 - Configurar o JBOSS com a chave criptografada
3 - Alterar os serviços do flex para utilizarem o canal seguro
4 - Acessar a URL pelo canal Https e porta 8443
1 - Gerando a chave criptografada
1.1 - Abra a shell do windows e navegue até o diretório %JAVA_HOME%/
bin/ . ex: C:\Arquivos de programas\Java\jdk1.5.0_10\bin
1.2 - execute a linha de comando keytool -genkey -alias tomcat -
keyalg RSA para iniciar a geração da chave.
1.3 - Utilize o password "changeit" para inicializar a geração da
chave.
1.4 - Responda todo o questionário.
1.5 - Após terminar o questionário uma chave com o nome de
'.keystore' deverá ter sido gerada no diretório 'C:\Documents and
Settings\username'
2 - Configurando JBOSS
2.1 - Caso o JBOSS esteja rodando, pare o servidor.
2.2 - Navegue a até a pasta %JBOSS_HOME%/server/default/deploy/
jbossweb-tomcat55.sar e abra o arquivo server.xml
2.3 - Navegue até a linha 28 do arquivo ou procure por "<!-- SSL/TLS
Connector configuration using the admin devl guide keystore -->"
2.4 - Descomente o bloco e mude o keystorePass para "changeit".
<Connector port="8443" address="${jboss.bind.address}"
maxThreads="100" strategy="ms" maxHttpHeaderSize="8192"
emptySessionPath="true"
scheme="https" secure="true" clientAuth="false"
keystoreFile="${jboss.server.home.dir}/conf/chap8.keystore"
keystorePass="changeit" sslProtocol = "TLS" />
3 - Alterando os serviços do Flex
3.1 - Abra o arquivo services-config.xml do Flex.
3.2 - Em "channels definition" crie um novo canal.
3.1 - Criando o novo canal
<channels>
<channel-definition id="my-graniteamf"
class="mx.messaging.channels.AMFChannel">
<endpoint
uri="http://{server.name}:{server.port}/{context.root}/
mbankingflexserver/amf"
class="flex.messaging.endpoints.AMFEndpoint" />
</channel-definition>
<channel-definition id="my-secureamf"
class="mx.messaging.channels.SecureAMFChannel">
<endpoint
uri="https://{server.name}:8443/{context.root}/
graniteamf/amfsecure"
class="flex.messaging.endpoints.AMFEndpoint" />
</channel-definition>
</channels>
3.2 - Insira o novo canal de comunicação nos serviços que deseja
trafegar dados seguros.
<destination id="pojo">
<channels>
<channel ref="my-secureamf"/>
</channels>
<properties>
<scope>session</scope>
<source>test.pojo.PojoService</source>
</properties>
</destination>
4 - Acesse a url utilizando o protocolo https e a porta 8443. Ex:
(https://localhost:8443/aplicação).
On 12 dez, 14:49, Leo <[EMAIL PROTECTED]> wrote:
> Olá pessoal
>
> Estou com uma dúvida com relação a comunicação segura entre Flex e Java. Eu
> fiz aqui um programinha simples que faz essa comunicação - Flex e Java via
> Granite/Guice com Deploy no JBoss. O programa tá rodando bem, eu uso o
> AMFChannel para fazer a comunicação entre os componentes Flex e Java.
>
> Todavia, é um requisito no projeto que a comunicaçã entre os componentes
> seja segura. Então substitui o AMFChannel pelo SecureAMFChannel e funcionou.
> O resto está tudo igual... Eu gostaria de saber se a comunicação já está
> segura só com o uso dessa classe, se precisa (e o que precisa) alterar algo,
> tanto no Flex quanto no JBoss (configuração, portas, etc...). Nunca
> trabalhei com nenhuma aplicação que envolvesse segurança/criptografia antes,
> e qualquer ajuda nesse sentido é bem vinda :).
>
> --
> Leo
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---