Zusammenfassung der Ressource
Web Services
- Definições
- Sistema de software projetado para permitir
interoperabilidade na interação entre máquinas
através de uma rede
- Surgiram com a missão de integrar
sistemas heterogênos
- Disponibilizado por meio de um contrato, que é uma interface que disponibiliza suas
funcionalidades, com uma infraestrutura leve e desacoplada de plataforma facilitando a
integração entre diferentes tecnologias
- Componentes de aplicativos baseados em XML,
autocontidos e autodescritivos, que se comunicam usando
protocolos abertos
- Autocontidos: não necessitam ou dependem
de outros componentes para existir - eles se
bastam
- Autodescritivos: não necessitam de
informações externas para expor suas
funcionalidades
- Baseados em protocolos abertos: protocolos
não-proprietários - protocolos padrões da
internet
- Uma interface que descreve uma coleção de operações que
são acessíveis pela rede através de mensagens XML
padronizadas
- Podem ser descobertos com UDDI e ser
utilizados por outras aplicações
- Representam uma lógica/função de negócio ou um
serviço que pode ser acessado por uma outra aplicação
na web
- Gerações de Web services
- Web services de
Primeira Geração
- Composta por meio de tecnologias e
especificações abertas: WSDL, XSD, SOAP,
UDDI e o WS-I
- Carece de qualidade para executar projetos críticos
com funcionalidades de produção em nível de
organização
- Categorias de participantes
- Provedor de serviços: indústria, negócio ou empresa
capaz de criar e fornecer serviços baseados em
software
- As interações entre o provedor e o agente
são basicamente a publicação dos
serviços
- A interação entre entre o solicitante e o agente
é a tarefa de pesquisar os serviços e os
provedores de serviços
- A interação entre o provedor e o solicitante
é chamada de vínculo (bind)
- Solicitante de serviços: empresa ou
negócio que gostaria de usar o serviço
- Agente de serviços: entidade ou sistema, que
ajuda o solicitante de serviços a descobrir o
provedor de serviços
- Web services de Segunda
Geração
- Propostos para lidar com lacunas de qualidade dos WS de 1ª geração:
segurança em nível de mensagem, transações entre serviços e
mensageria confiável
- WS-*: extensões e especificações para fornecer um conjunto
sofisticado de componentes construídos sobre os WS de 1ª
geração
- Segurança: WS-Security, WS-Trust, WS-Encryption,
WS-SecureConversation
- Políticas: WS-Policy,
WS-PolicyAssertions
- Processos de negócio:
WS-CDL, WS-BPEL
- Vantagens de Web
Services
- Permite utilizar as regras de
negócio através da rede
- Baixo custo de
comunicação (Internet)
- Conecta aplicações de diferentes
fornecedores: lida com heterogeneidade
e integração
- Protocolo padronizado
(SOAP/WSDL/UDDI)
- Interação em geral é máquina-máquina ou
aplicação-aplicação, não requerendo
interações imediatas de usuários finais
- WS-Security (WSS)
- O protocolo SOAP não prevê a proteção de
mensagens, deixando essa tarefa para especificações
estendidas
- O SOAP é um protocolo que roda (na
maioria dos casos) sobre o protocolo
HTTP
- Com o HTTP, é possível autenticar o
remetente, assinar a mensagem e
criptografar os dados
- O remetente é conhecido, o destinatário pode
confirmar a integridade e a mensagem se mantém
confidencial
- Contudo, o HTTP só oferece segurança
ponto-a-ponto e muitas vezes, é necessário
segurança fim-a-fim
- Ademais, pode ser necessária mais de uma chave de
criptografia ao longo da rota percorrida e domínios de
segurança podem ser cruzados
- Logo, para soluções mais complexas o
HTTP não satisfaz todos os requisitos de
segurança
- O WS-Security utiliza diversos padrões
e especificações de segurança
pré-existentes
- Pode-se utilizar Kerberos e X.509
para fornecer autenticação
- XML-Encryption e XML-Signature para fornecer
criptografia e assinatura do conteúdo das mensagens
XML
- O WS-Security agrupa um conjunto de especificações
em um framework a ser embutido em uma mensagem
SOAP
- Utilizado para estender os mecanismos do protocolo SOAP
para fornecer segurança (confidencialidade, integridade e
não-repúdio) fim-a-fim
- Ele também se associa ao WS-Privacy,
WS-Test, WS-Policy, WS-Trust, ID-WSD, TAS3
- O WS-Privacy determinará de que forma os
Web Services serão adotados e
implementados
- O WS-Policy define como os recursos e
restrições das normas de segurança poderão
ser expressados
- O WS-Trust descreve um modelo para que se obtenha um relacionamento de
confiança, tanto direto, quanto por meio de agentes (incluindo terceiros e
intermediário)
- O protocolo HTTPS não é utilizado para garantir mais segurança para web
services ele está associado ao protocolo SSL/TLS que funciona bem apenas
para segurança ponto-a-ponto