SINO 2006Tecnologia de segurança   para Web Services              miguel.pardal@dei.ist.utl.pt              alberto.cunha@...
Sumário    • Web Services    • Tecnologias de segurança      – WS-SecurityPolicy      – SAML    • Conclusão            Tec...
Sumário    • Web Services    • Tecnologias de segurança      – WS-SecurityPolicy      – SAML    • Conclusão            Tec...
Web Services• Propostos pela indústria   – Microsoft, IBM, Sun, Oracle, ...• Objectivos para os sistemas de informação   –...
Invocação de Web Service                                                          #1 PublicarCliente                      ...
Normas e implementações de Web Services                Processos de negócio                    Mensagens    Segurança     ...
Sumário    • Web Services    • Tecnologias de segurança      – WS-SecurityPolicy      – SAML    • Conclusão            Tec...
Segurança de Web Services (i)• Web Services com valor implicam segurança  – Controlo de acessos  – Protecção das mensagens...
Normas de segurança             Processos de negócio                 Mensagens Segurança                          Transacç...
ImplementaçõesFornecedor     Implementação                                  Normas suportadasMicrosoft                    ...
Segurança de Web Services (ii)• Ênfase na utilização de tecnologias existentes:   – X.509   – Kerberos   – outras• Aspecto...
WS-SecurityPolicy• Contrato de segurança• Descreve as configurações disponíveis   – Alternativas• Negociação com o cliente...
Exemplo WS-Policy<wsp:Policy>    <sp:SymmetricBinding>        <wsp:Policy>            <sp:ProtectionToken>                ...
Security Assertion             Markup Language• Formato de credenciais• Credenciais de autenticação, autorização e  atribu...
Exemplo de credencial SAMLde Autenticação<Assertion>    <Conditions NotBefore="2006-07-22T12:02:00Z" NotOnOrAfter="2006-07...
Exemplo de credencial SAMLde Autorização<Assertion>    <Conditions NotBefore="2006-07-22T12:02:00Z" NotOnOrAfter="2006-07-...
Exemplo de credencial SAMLde Atributos<Assertion>    <AttributeStatement>        <Subject>            <NameIdentifier   Fo...
Sumário    • Web Services    • Tecnologias de segurança      – WS-SecurityPolicy      – SAML    • Conclusão            Tec...
Conclusão (i)• Avaliação das implementações  disponíveis• Mais valias dos Web Services:  – Fácil integração entre Java e D...
Conclusão (ii)• Promessas  – WS-SecurityPolicy para automatizar a configuração da    interacção entre cliente e serviço  –...
Perguntas e respostasNa nossa visão:   As plataformas de Web Services devem permitir     automatizar os mecanismos de segu...
Upcoming SlideShare
Loading in …5
×

Tecnologia de segurança para Web Services

1,252 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,252
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Tecnologia de segurança para Web Services

  1. 1. SINO 2006Tecnologia de segurança para Web Services miguel.pardal@dei.ist.utl.pt alberto.cunha@link.pt 11 de Outubro de 2006
  2. 2. Sumário • Web Services • Tecnologias de segurança – WS-SecurityPolicy – SAML • Conclusão Tecnologia de segurança para Web Services
  3. 3. Sumário • Web Services • Tecnologias de segurança – WS-SecurityPolicy – SAML • Conclusão Tecnologia de segurança para Web Services
  4. 4. Web Services• Propostos pela indústria – Microsoft, IBM, Sun, Oracle, ...• Objectivos para os sistemas de informação – Maior flexibilidade – Reutilização – Interoperabilidade• O serviço é a unidade de acesso a informação e funcionalidade• Integração baseada em contratos Tecnologia de segurança para Web Services
  5. 5. Invocação de Web Service #1 PublicarCliente Serviço #2 Descobrir Dados XML Schema #3 Gerar SOAP Adaptadores para SOAP Handlers Funções WSDL #4 Configurar Política WS-Policy Processadores SOAP mensagens Handlers SOAP #5 Invocar #6 Executar Tecnologia de segurança para Web Services
  6. 6. Normas e implementações de Web Services Processos de negócio Mensagens Segurança Transacções fiáveis Descoberta G e s t Contrato ã o Mensagem Transporte Representação de dados Interoperabilidade Tecnologia de segurança para Web Services
  7. 7. Sumário • Web Services • Tecnologias de segurança – WS-SecurityPolicy – SAML • Conclusão Tecnologia de segurança para Web Services
  8. 8. Segurança de Web Services (i)• Web Services com valor implicam segurança – Controlo de acessos – Protecção das mensagens – Flexibilidade de configuração Tecnologia de segurança para Web Services
  9. 9. Normas de segurança Processos de negócio Mensagens Segurança Transacções fiáveis Descoberta G e s t Contrato ã o Mensagem Transporte Representação de dados XML Encryption XML Signature Interoperabilidade SAML WS-Security WS-SecurityPolicy WS-Trust WS-SecureConversation WS-Federation XACML REL XAdES ? Tecnologia de segurança para Web Services XKMS
  10. 10. ImplementaçõesFornecedor Implementação Normas suportadasMicrosoft WS-Security: Username, X.509, WSE 3 (Web Services Enhancements): Kerberos Dot Net Framework 2.0, WS-Secure Conversation, WS-Trust Visual Studio 2005 SAML (asserções)Apache WS-Security: Username, X.509 WSS4J (Web Services Security for Java): Java 1.4+, WS-Policy Apache Axis2 SAMLSun WS-Security: Username, X.509 XWSS (XML and Web Services Security):Microsystems SAML Java 1.5+, Java Web Services Developer Pack 2.0 Tecnologia de segurança para Web Services
  11. 11. Segurança de Web Services (ii)• Ênfase na utilização de tecnologias existentes: – X.509 – Kerberos – outras• Aspectos inovadores – Configuração automática baseada em contrato (WS-SecurityPolicy) – Troca de informação entre diferentes domínios de confiança (SAML) Tecnologia de segurança para Web Services
  12. 12. WS-SecurityPolicy• Contrato de segurança• Descreve as configurações disponíveis – Alternativas• Negociação com o cliente – Intersecção das alternativas suportadas por cliente e serviço• Composição de política – União das alternativas suportadas pelo serviço e pelo servidor onde se executa Tecnologia de segurança para Web Services
  13. 13. Exemplo WS-Policy<wsp:Policy> <sp:SymmetricBinding> <wsp:Policy> <sp:ProtectionToken> <wsp:Policy> <sp:KerberosV5APREQToken sp:IncludeToken=".../Once" /> </wsp:Policy> </sp:ProtectionToken> <sp:SignBeforeEncrypting /> <sp:EncryptSignature /> </wsp:Policy> </sp:SymmetricBinding> <sp:SignedParts> <sp:Body/> <sp:Header Namespace="http://xmlsoap.org/ws/2004/08/addressing" /> </sp:SignedParts> <sp:EncryptedParts> <sp:Body/> </sp:EncryptedParts></wsp:Policy> Tecnologia de segurança para Web Services
  14. 14. Security Assertion Markup Language• Formato de credenciais• Credenciais de autenticação, autorização e atributos – Válidas entre diferentes domínios de confiança – Qualquer entidade pode emitir credenciais – Quem recebe a credencial é que decide se confia nela ou não Tecnologia de segurança para Web Services
  15. 15. Exemplo de credencial SAMLde Autenticação<Assertion> <Conditions NotBefore="2006-07-22T12:02:00Z" NotOnOrAfter="2006-07- 22T13:02:00Z"> <AudienceRestrictionCondition> <Audience>http:/www.example.com/Members</Audience> </AudienceRestrictionCondition> </Conditions> <Advice> <AssertionIDReference>id</AssertionIDReference> <Assertion>...</Assertion> </Advice> <AuthenticationStatement AuthenticationMethod="urn:ietf:rfc:2246" AuthenticationInstant="2006-07- 22T12:02:00Z"> <Subject> <NameIdentifier Format="urn:oasis:names:tc:SAML:1.0:assertion#emailAddress"> user@example.com </NameIdentifier> </Subject> </AuthenticationStatement> <ds:Signature>...</ds:Signature></Assertion> Tecnologia de segurança para Web Services
  16. 16. Exemplo de credencial SAMLde Autorização<Assertion> <Conditions NotBefore="2006-07-22T12:02:00Z" NotOnOrAfter="2006-07- 22T13:02:00Z"> </Conditions> <AuthorizationDecisionStatement Resource="http://www.company.com/info" Decision="Permit"> <Subject> <NameIdentifier Format="urn:oasis:names:tc:SAML:1.0:assertion#emailAddress"> user@example.com </NameIdentifier> </Subject> <Action Namespace="urn:oasis:names:tc:SAML:1.0:action:rwedc">Read</Action> </AuthorizationDecisionStatement><ds:Signature>...</ds:Signature></Assertion> Tecnologia de segurança para Web Services
  17. 17. Exemplo de credencial SAMLde Atributos<Assertion> <AttributeStatement> <Subject> <NameIdentifier Format="urn:oasis:names:tc:SAML:1.0:assertion#emailAddress"> user@example.com </NameIdentifier> </Subject> <Attribute AttributeName="PaidStatus" AttributeNamespace="http://company.com"> <AttributeValue>PaidUp</AttributeValue> </Attribute> <Attribute AttributeName="CreditLimit" AttributeNamespace="http://company.com"> <AttributeValue xsi:type="my:type"> <my:amount currency="EUR">500.00<my:amount> </AttributeValue> </Attribute> </AttributeStatement> <ds:Signature>...</ds:Signature></Assertion> Tecnologia de segurança para Web Services
  18. 18. Sumário • Web Services • Tecnologias de segurança – WS-SecurityPolicy – SAML • Conclusão Tecnologia de segurança para Web Services
  19. 19. Conclusão (i)• Avaliação das implementações disponíveis• Mais valias dos Web Services: – Fácil integração entre Java e Dot Net – Cenários de segurança mais comuns são suportados por simples configuração • Nome de utilizador e senha • Certificados digitais X.509 Tecnologia de segurança para Web Services
  20. 20. Conclusão (ii)• Promessas – WS-SecurityPolicy para automatizar a configuração da interacção entre cliente e serviço – SAML para “abolir” fronteiras organizacionais nos serviços, mantendo a confiança• Problemas – WS-SecurityPolicy ainda não é suportada • A configuração é realizada durante a instalação e não durante a execução – SAML ainda não é segura • Falta a assinatura digital para garantir a integridade da informação Tecnologia de segurança para Web Services
  21. 21. Perguntas e respostasNa nossa visão: As plataformas de Web Services devem permitir automatizar os mecanismos de segurança, mas dando contexto às aplicações de negócio, delegando-lhes as verdadeiras decisões de confiança. Obrigado alberto.cunha@link.pt miguel.pardal@dei.ist.utl.pt Tecnologia de segurança para Web Services

×