Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

samuca

Webservices + Segurança

Mensagens Recomendadas

samuca

Eu preciso de colocar webservices numa aplicação já existente mas este devem ter segurança (autenticação de utilizador). Não me convinha transformar toda a aplicação numa aplicação Web (que dependesse de um servidor a correr (Glassfish ou Tomcat) para funcionar)..

Alguém já fez algo do género?

É que a maior parte da documentação que eu vejo é para desenvolver um simples webservice autónomo e independente de uma aplicação já existente.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
M6

Não sei se percebi bem o teu problema, mas vamos por partes.

1. Para teres segurança no webservice investiga por ws-secure, vais encontrar o que procuras.

2. Quanto à integração do webservice, provavelmente não necessitas de ter o mesmo a correr na tua aplicação, dado que não me parece que o mesmo tenha de fazer uso do GUI, por exemplo. O que provavelmente deve acontecer é que o webservice poderá ter de partilhar alguns componentes da tua aplicação, por exemplo leitura, validação e escrita de informação na base de dados. Se assim é, basta externalizares esses componentes para um JAR que é partilhado pela tua aplicação e pelo webservice.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
samuca

2. Quanto à integração do webservice, provavelmente não necessitas de ter o mesmo a correr na tua aplicação, dado que não me parece que o mesmo tenha de fazer uso do GUI, por exemplo. O que provavelmente deve acontecer é que o webservice poderá ter de partilhar alguns componentes da tua aplicação, por exemplo leitura, validação e escrita de informação na base de dados. Se assim é, basta externalizares esses componentes para um JAR que é partilhado pela tua aplicação e pelo webservice.

Por acaso preciso de o ter a correr mesmo na aplicação, mesmo porque interage com o GUI.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
M6

Interage com o GUI?

Não sei porquê isso cheira-me mesmo, mesmo, mas mesmo mesmo a esturro!...

Isso quer dizer que vais ter uma instância da tua aplicação para responder a cada pedido desse webservice?

É que senão não consegues responder a dois pedidos em simultâneo, dado que o primeiro estará a usar o GUI.

E que vais ter de ter uma sessão aberta no SO dado que sem sessão não há contexto para correr uma aplicação gráfica.

Já agora para que serve a interacção com o GUI?

Vais simular interacção humana?

Não há absolutamente nada que o GUI tenha que não se possa fazer sem GUI em background...


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
samuca

Interage com o GUI?

Não sei porquê isso cheira-me mesmo, mesmo, mas mesmo mesmo a esturro!...

Estou a chegar à conclusão que tens razão, se calhar pensei mal na solução possível e webservices não será a melhor solução.

Basicamente eu queria pegar numa aplicação já existente e separar o GUI da camada de negócio e pelo meio comunicar com webservices. Isto permitiria arrancar o meu programa como um processo e só posteriormente arrancar o GUI...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
M6

A separação do GUI com a camada de negócio é obviamente um must de design que deve ser feito desde o inicio.

Da mesma forma como o GUI está separado da camada de negócio, os webservice estará ao mesmo nível, deve comunicar com a camada de negócio e nunca com o GUI.

O que descreves está a ficar alinhado com o que havia dito inicialmente, tens a camada de negócio extrenalizada num JAR que é partilhada pela tua aplicação, que contém o GUI, e pelo webservice.

O webservice serve para comunicares com outros sistemas, no caso que descreves (e pelo que compreendi) serve para responder a pedidos de outros sistemas. Por isso se tiveres o webservice a correr num servidor e a usar a camada de negócio partilhada terás a tua separação entre o webservice e a aplicação propriamente dita.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.