SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
SINO 2006




Tecnologia de segurança
   para Web Services




              miguel.pardal@dei.ist.utl.pt
              alberto.cunha@link.pt

                   11 de Outubro de 2006
Sumário



    • Web Services

    • Tecnologias de segurança
      – WS-SecurityPolicy

      – SAML

    • Conclusão

            Tecnologia de segurança para Web Services
Sumário



    • Web Services

    • Tecnologias de segurança
      – WS-SecurityPolicy

      – SAML

    • Conclusão

            Tecnologia de segurança para Web Services
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
Invocação de Web Service
                                                          #1 Publicar
Cliente                                                                         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
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
Sumário



    • Web Services

    • Tecnologias de segurança
      – WS-SecurityPolicy

      – SAML

    • Conclusão

            Tecnologia de segurança para Web Services
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
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
Implementações

Fornecedor     Implementação                                  Normas suportadas

Microsoft                                                     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                                   SAML




Sun                                                           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
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
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
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
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
Exemplo de credencial SAML
de 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
Exemplo de credencial SAML
de 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
Exemplo de credencial SAML
de 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
Sumário



    • Web Services

    • Tecnologias de segurança
      – WS-SecurityPolicy

      – SAML

    • Conclusão

            Tecnologia de segurança para Web Services
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
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
Perguntas e respostas


Na 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

Weitere ähnliche Inhalte

Ähnlich wie Tecnologia de segurança para Web Services

Citrix transformando seu DC em nuvem
Citrix   transformando seu DC em nuvemCitrix   transformando seu DC em nuvem
Citrix transformando seu DC em nuvemNuno Alves
 
Microservices Architecture Workshop
Microservices Architecture WorkshopMicroservices Architecture Workshop
Microservices Architecture WorkshopClaudio Acquaviva
 
Cloud conceitos, segurança e migração
Cloud   conceitos, segurança e migraçãoCloud   conceitos, segurança e migração
Cloud conceitos, segurança e migraçãoAllen Informática
 
Gestao de Segurança de Ti | Andracom
Gestao de Segurança de Ti | AndracomGestao de Segurança de Ti | Andracom
Gestao de Segurança de Ti | AndracomAndracom Solutions
 
Windows Azure no Mundo Real para IT-Pros
Windows Azure no Mundo Real para IT-ProsWindows Azure no Mundo Real para IT-Pros
Windows Azure no Mundo Real para IT-ProsMarkus Christen
 
AAB303 - Windows Communication Foundation - wcamb
AAB303 - Windows Communication Foundation - wcambAAB303 - Windows Communication Foundation - wcamb
AAB303 - Windows Communication Foundation - wcambMicrosoft Brasil
 
AWS App Mesh - MAD304 - São Paulo AWS Summit
AWS App Mesh - MAD304 - São Paulo AWS SummitAWS App Mesh - MAD304 - São Paulo AWS Summit
AWS App Mesh - MAD304 - São Paulo AWS SummitAmazon Web Services
 
Técnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web servicesTécnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web servicesJaguaraci Silva
 
Virtualização de Servidores
Virtualização de ServidoresVirtualização de Servidores
Virtualização de ServidoresISH Tecnologia
 
Histórico e Fundamentos das Redes de Nova Geração (NGN)
Histórico e Fundamentos das Redes de Nova Geração (NGN)Histórico e Fundamentos das Redes de Nova Geração (NGN)
Histórico e Fundamentos das Redes de Nova Geração (NGN)Frederico Madeira
 
Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWSDextra
 
3 Com Novas SoluçOes Para Grandes MéDias E Pequenas Empresas
3 Com   Novas SoluçOes Para Grandes MéDias E Pequenas Empresas3 Com   Novas SoluçOes Para Grandes MéDias E Pequenas Empresas
3 Com Novas SoluçOes Para Grandes MéDias E Pequenas Empresasmarcesil
 
Apresentacao Ações INSS 19 de junho de 2009
Apresentacao Ações INSS 19 de junho de 2009Apresentacao Ações INSS 19 de junho de 2009
Apresentacao Ações INSS 19 de junho de 2009Paulo Emerson Pereira
 
Cloud Publica Com alta performance, flexível e gerenciável.
Cloud Publica Com alta performance, flexível e gerenciável.Cloud Publica Com alta performance, flexível e gerenciável.
Cloud Publica Com alta performance, flexível e gerenciável.Thiago Viola
 

Ähnlich wie Tecnologia de segurança para Web Services (20)

Citrix transformando seu DC em nuvem
Citrix   transformando seu DC em nuvemCitrix   transformando seu DC em nuvem
Citrix transformando seu DC em nuvem
 
Microservices Architecture Workshop
Microservices Architecture WorkshopMicroservices Architecture Workshop
Microservices Architecture Workshop
 
Curso de redes_cisco
Curso de redes_ciscoCurso de redes_cisco
Curso de redes_cisco
 
Cloud conceitos, segurança e migração
Cloud   conceitos, segurança e migraçãoCloud   conceitos, segurança e migração
Cloud conceitos, segurança e migração
 
Gestao de Segurança de Ti | Andracom
Gestao de Segurança de Ti | AndracomGestao de Segurança de Ti | Andracom
Gestao de Segurança de Ti | Andracom
 
Windows Azure no Mundo Real para IT-Pros
Windows Azure no Mundo Real para IT-ProsWindows Azure no Mundo Real para IT-Pros
Windows Azure no Mundo Real para IT-Pros
 
AAB303 - Windows Communication Foundation - wcamb
AAB303 - Windows Communication Foundation - wcambAAB303 - Windows Communication Foundation - wcamb
AAB303 - Windows Communication Foundation - wcamb
 
AWS App Mesh - MAD304 - São Paulo AWS Summit
AWS App Mesh - MAD304 - São Paulo AWS SummitAWS App Mesh - MAD304 - São Paulo AWS Summit
AWS App Mesh - MAD304 - São Paulo AWS Summit
 
Técnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web servicesTécnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web services
 
2011 - TI - Novos Desafios de Segurança
2011 - TI - Novos Desafios de Segurança2011 - TI - Novos Desafios de Segurança
2011 - TI - Novos Desafios de Segurança
 
Virtualização de Servidores
Virtualização de ServidoresVirtualização de Servidores
Virtualização de Servidores
 
Segurança na Nuvem
Segurança na NuvemSegurança na Nuvem
Segurança na Nuvem
 
Histórico e Fundamentos das Redes de Nova Geração (NGN)
Histórico e Fundamentos das Redes de Nova Geração (NGN)Histórico e Fundamentos das Redes de Nova Geração (NGN)
Histórico e Fundamentos das Redes de Nova Geração (NGN)
 
Maratona JBoss 2010 - JBossWS
Maratona JBoss 2010 -  JBossWSMaratona JBoss 2010 -  JBossWS
Maratona JBoss 2010 - JBossWS
 
3 Com Novas SoluçOes Para Grandes MéDias E Pequenas Empresas
3 Com   Novas SoluçOes Para Grandes MéDias E Pequenas Empresas3 Com   Novas SoluçOes Para Grandes MéDias E Pequenas Empresas
3 Com Novas SoluçOes Para Grandes MéDias E Pequenas Empresas
 
WebServices-XML
WebServices-XMLWebServices-XML
WebServices-XML
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Desafio: Manter.
Desafio: Manter.Desafio: Manter.
Desafio: Manter.
 
Apresentacao Ações INSS 19 de junho de 2009
Apresentacao Ações INSS 19 de junho de 2009Apresentacao Ações INSS 19 de junho de 2009
Apresentacao Ações INSS 19 de junho de 2009
 
Cloud Publica Com alta performance, flexível e gerenciável.
Cloud Publica Com alta performance, flexível e gerenciável.Cloud Publica Com alta performance, flexível e gerenciável.
Cloud Publica Com alta performance, flexível e gerenciável.
 

Mehr von Miguel Pardal

Master Beginners Workshop - Feb 2023
Master Beginners Workshop - Feb 2023Master Beginners Workshop - Feb 2023
Master Beginners Workshop - Feb 2023Miguel Pardal
 
Master Beginners Workshop - September 2019
Master Beginners Workshop - September 2019Master Beginners Workshop - September 2019
Master Beginners Workshop - September 2019Miguel Pardal
 
SafeCloud Secure Communication solutions (WP1 overview)
SafeCloud Secure Communication solutions (WP1 overview)SafeCloud Secure Communication solutions (WP1 overview)
SafeCloud Secure Communication solutions (WP1 overview)Miguel Pardal
 
Master Beginners' Workshop September 2018
Master Beginners' Workshop September 2018Master Beginners' Workshop September 2018
Master Beginners' Workshop September 2018Miguel Pardal
 
IoT Middleware for Precision Agriculture: workforce monitoring in olive fields
IoT Middleware for Precision Agriculture: workforce monitoring in olive fieldsIoT Middleware for Precision Agriculture: workforce monitoring in olive fields
IoT Middleware for Precision Agriculture: workforce monitoring in olive fieldsMiguel Pardal
 
Rastreabilidade na Internet das (muitas) Coisas
Rastreabilidade na Internet das (muitas) CoisasRastreabilidade na Internet das (muitas) Coisas
Rastreabilidade na Internet das (muitas) CoisasMiguel Pardal
 
Vulnerability-tolerant Transport Layer Security
Vulnerability-tolerant Transport Layer SecurityVulnerability-tolerant Transport Layer Security
Vulnerability-tolerant Transport Layer SecurityMiguel Pardal
 
Arranque Seguro de Redes 6LoWPAN para prevenir Ataques Vampiro na Internet da...
Arranque Seguro de Redes 6LoWPAN para prevenir Ataques Vampiro na Internet da...Arranque Seguro de Redes 6LoWPAN para prevenir Ataques Vampiro na Internet da...
Arranque Seguro de Redes 6LoWPAN para prevenir Ataques Vampiro na Internet da...Miguel Pardal
 
Precision Agriculture with Sensors and Technologies from the Internet of Things
Precision Agriculture with Sensors and Technologies from the Internet of ThingsPrecision Agriculture with Sensors and Technologies from the Internet of Things
Precision Agriculture with Sensors and Technologies from the Internet of ThingsMiguel Pardal
 
Smart Places INForum16 presentation
Smart Places INForum16 presentationSmart Places INForum16 presentation
Smart Places INForum16 presentationMiguel Pardal
 
Eclipse workshop presentation (March 2016)
Eclipse workshop presentation (March 2016)Eclipse workshop presentation (March 2016)
Eclipse workshop presentation (March 2016)Miguel Pardal
 
LaTeX workshop (NEB)
LaTeX workshop (NEB)LaTeX workshop (NEB)
LaTeX workshop (NEB)Miguel Pardal
 
Thesis for beginners 2015-10
Thesis for beginners 2015-10Thesis for beginners 2015-10
Thesis for beginners 2015-10Miguel Pardal
 
LaTeX workshop (JEQ)
LaTeX workshop (JEQ)LaTeX workshop (JEQ)
LaTeX workshop (JEQ)Miguel Pardal
 
Thesis for beginners
Thesis for beginnersThesis for beginners
Thesis for beginnersMiguel Pardal
 
Scalable and secure RFID data discovery
Scalable and secure RFID data discoveryScalable and secure RFID data discovery
Scalable and secure RFID data discoveryMiguel Pardal
 
Breve introdução à investigação
Breve introdução à investigaçãoBreve introdução à investigação
Breve introdução à investigaçãoMiguel Pardal
 
Eclipse workshop presentation
Eclipse workshop presentationEclipse workshop presentation
Eclipse workshop presentationMiguel Pardal
 
BEST Lisboa 2013 - The Internet of Things class
BEST Lisboa 2013 - The Internet of Things classBEST Lisboa 2013 - The Internet of Things class
BEST Lisboa 2013 - The Internet of Things classMiguel Pardal
 

Mehr von Miguel Pardal (20)

Master Beginners Workshop - Feb 2023
Master Beginners Workshop - Feb 2023Master Beginners Workshop - Feb 2023
Master Beginners Workshop - Feb 2023
 
Master Beginners Workshop - September 2019
Master Beginners Workshop - September 2019Master Beginners Workshop - September 2019
Master Beginners Workshop - September 2019
 
SafeCloud Secure Communication solutions (WP1 overview)
SafeCloud Secure Communication solutions (WP1 overview)SafeCloud Secure Communication solutions (WP1 overview)
SafeCloud Secure Communication solutions (WP1 overview)
 
Master Beginners' Workshop September 2018
Master Beginners' Workshop September 2018Master Beginners' Workshop September 2018
Master Beginners' Workshop September 2018
 
IoT Middleware for Precision Agriculture: workforce monitoring in olive fields
IoT Middleware for Precision Agriculture: workforce monitoring in olive fieldsIoT Middleware for Precision Agriculture: workforce monitoring in olive fields
IoT Middleware for Precision Agriculture: workforce monitoring in olive fields
 
Rastreabilidade na Internet das (muitas) Coisas
Rastreabilidade na Internet das (muitas) CoisasRastreabilidade na Internet das (muitas) Coisas
Rastreabilidade na Internet das (muitas) Coisas
 
Vulnerability-tolerant Transport Layer Security
Vulnerability-tolerant Transport Layer SecurityVulnerability-tolerant Transport Layer Security
Vulnerability-tolerant Transport Layer Security
 
Master Beginners
Master BeginnersMaster Beginners
Master Beginners
 
Arranque Seguro de Redes 6LoWPAN para prevenir Ataques Vampiro na Internet da...
Arranque Seguro de Redes 6LoWPAN para prevenir Ataques Vampiro na Internet da...Arranque Seguro de Redes 6LoWPAN para prevenir Ataques Vampiro na Internet da...
Arranque Seguro de Redes 6LoWPAN para prevenir Ataques Vampiro na Internet da...
 
Precision Agriculture with Sensors and Technologies from the Internet of Things
Precision Agriculture with Sensors and Technologies from the Internet of ThingsPrecision Agriculture with Sensors and Technologies from the Internet of Things
Precision Agriculture with Sensors and Technologies from the Internet of Things
 
Smart Places INForum16 presentation
Smart Places INForum16 presentationSmart Places INForum16 presentation
Smart Places INForum16 presentation
 
Eclipse workshop presentation (March 2016)
Eclipse workshop presentation (March 2016)Eclipse workshop presentation (March 2016)
Eclipse workshop presentation (March 2016)
 
LaTeX workshop (NEB)
LaTeX workshop (NEB)LaTeX workshop (NEB)
LaTeX workshop (NEB)
 
Thesis for beginners 2015-10
Thesis for beginners 2015-10Thesis for beginners 2015-10
Thesis for beginners 2015-10
 
LaTeX workshop (JEQ)
LaTeX workshop (JEQ)LaTeX workshop (JEQ)
LaTeX workshop (JEQ)
 
Thesis for beginners
Thesis for beginnersThesis for beginners
Thesis for beginners
 
Scalable and secure RFID data discovery
Scalable and secure RFID data discoveryScalable and secure RFID data discovery
Scalable and secure RFID data discovery
 
Breve introdução à investigação
Breve introdução à investigaçãoBreve introdução à investigação
Breve introdução à investigação
 
Eclipse workshop presentation
Eclipse workshop presentationEclipse workshop presentation
Eclipse workshop presentation
 
BEST Lisboa 2013 - The Internet of Things class
BEST Lisboa 2013 - The Internet of Things classBEST Lisboa 2013 - The Internet of Things class
BEST Lisboa 2013 - The Internet of Things class
 

Tecnologia de segurança para Web Services

  • 1. SINO 2006 Tecnologia de segurança para Web Services miguel.pardal@dei.ist.utl.pt alberto.cunha@link.pt 11 de Outubro de 2006
  • 2. Sumário • Web Services • Tecnologias de segurança – WS-SecurityPolicy – SAML • Conclusão Tecnologia de segurança para Web Services
  • 3. Sumário • Web Services • Tecnologias de segurança – WS-SecurityPolicy – SAML • Conclusão Tecnologia de segurança para Web Services
  • 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. Invocação de Web Service #1 Publicar Cliente 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. 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. Sumário • Web Services • Tecnologias de segurança – WS-SecurityPolicy – SAML • Conclusão Tecnologia de segurança para Web Services
  • 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. 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. Implementações Fornecedor Implementação Normas suportadas Microsoft 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 SAML Sun 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. 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. 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. 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. 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. Exemplo de credencial SAML de 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. Exemplo de credencial SAML de 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. Exemplo de credencial SAML de 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. Sumário • Web Services • Tecnologias de segurança – WS-SecurityPolicy – SAML • Conclusão Tecnologia de segurança para Web Services
  • 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. 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. Perguntas e respostas Na 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