Скачать презентацию Securing service oriented architectures with WS-Security Matias Cuenca-Acuna Скачать презентацию Securing service oriented architectures with WS-Security Matias Cuenca-Acuna

1fc21c243595a771bcb86e5cc890e154.ppt

  • Количество слайдов: 29

Securing service oriented architectures with WS-Security Matias Cuenca-Acuna Aug, 2007 Securing service oriented architectures with WS-Security Matias Cuenca-Acuna Aug, 2007

Talk Outline • Motivation • Introducing the technology • WS-Security in action • Performance Talk Outline • Motivation • Introducing the technology • WS-Security in action • Performance Considerations • Doing SOA with FLOSS • Summary – Q&A Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 3

The evolution of Internet services supplier partner customer Internet Pages, mash-ups Saa. S, … The evolution of Internet services supplier partner customer Internet Pages, mash-ups Saa. S, … firewall SOA Enterprise services Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 4

The evolution of Internet services Customer + Other services Supplier Pages, mash-ups Saa. S, The evolution of Internet services Customer + Other services Supplier Pages, mash-ups Saa. S, … partner Open API firewall SOA Enterprise services Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 5

Why looking at SOA, Why Security? • SOA is a huge success… – 71% Why looking at SOA, Why Security? • SOA is a huge success… – 71% of the companies have already invested in SOA, 85% is predicted for 2008 (Source: IDC 2006) – Microsoft just launched their SOA stack called Windows Communication Foundation (March 2007) – Sun released Java 6, the first version to include a SOA stack (Dec 2006) • B 2 B integration is becoming a reality – $7000 B will be spent on B 2 B transactions in 2007 (i. e. 45% of the total) (Source IDC) • SOA simplifies B 2 B but also exposes a bigger attack front – Shared APIs allow partners and attackers to access the core business apps. – Automated attacks are easier than ever • Web Services Description Language (WSDL) • Universal description, discovery, and integration (UDDI) • Off the shelve software stacks are everywhere – 75% of hacks occur at the Application/Service level (Source: Gartner) • WS-Security is to SOA what SSL is to HTTP (albeit at different rates )… – WS-Security is the only standard way to secure SOA • backed by the big guys (IBM, MS, Verisign) at OASIS (2006) • WS-Security adoption doubled in 2005 WS-Security is needed to support SOA growth… Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 6

Introducing the technology Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and Introducing the technology Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 7

What is SOA? • A service-oriented architecture is essentially a collection of services – What is SOA? • A service-oriented architecture is essentially a collection of services – These services communicate with each other and the communication can involve either simple data passing or direct application execution; – also it could involve two or more services coordinating some activity. • What is a Service? – A service is a function that is well-defined, self-contained, and does not depend on the context or state of others. • What is a Web Service? – Typically a web service is XML/SOAP based and most often described by WSDL and Schemas. In most SOA implementations a directory system known as UDDI is used to for Web Service discovery and central publication. Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 8

The SOA reference architecture Increase business agility reducing integration expense Increase asset reuse SOA The SOA reference architecture Increase business agility reducing integration expense Increase asset reuse SOA enables new business processes and composite applications from existing services Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 9

The OSI model meets the SOA Stack DATA Perspective Data Representation Layer (XML) • The OSI model meets the SOA Stack DATA Perspective Data Representation Layer (XML) • More layers are being constantly added NETWORK Perspective – Security – Reliable messaging – Manageability Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 10

Simple Object Access Protocol (SOAP) • SOAP is a protocol for exchanging XML-based messages Simple Object Access Protocol (SOAP) • SOAP is a protocol for exchanging XML-based messages over computer networks – Normally using HTTP • SOAP forms the foundation layer of the Web Services (WS) stack • Inside a SOAP message – Envelope, Header & Body Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 11

WS-Security Anatomy Secured SOAP Message <soap: Envelope> <soap: Header> <wsse: Security> <Signature> Security Feature WS-Security Anatomy Secured SOAP Message Security Feature Function SOAP Header WS-Security • Attaches signature, encryption, security tokens to SOAP messages SAML Token • Authenticates initiator of SOAP request. • Enables role based authorization. • Time-limited. • Interoperable. X. 509 Certificate • Encryption and signature verification. XML Signature, DSIG • Multiple signed areas of header and body. • Integrity protection via PKI based cryptography. • Prevents tampering. SOAP Body XML Encryption • Multiple encrypted areas of body. • Prevents disclosure. Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 12

A signed SOAP message WS-Security headers Signature block Signed references Signature value Signature key A signed SOAP message WS-Security headers Signature block Signed references Signature value Signature key The content is selectively signed (not the message) Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 13

WS-Security in action Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and WS-Security in action Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 14

Anatomy of the SOA Security challenge The need for content based security Internet, Intranet Anatomy of the SOA Security challenge The need for content based security Internet, Intranet and/or Extranet Perimeter & DMZ Web (HTTP) Distribution Layer Application (XML) Web Services Layer DB Layer Oracle Firewall VPN Termination (XML Traffic) IPS Network Threats SSL Termination SOAP TCP/IP Unsecured APIs enable attackers to go deep into the company Perimeter defense is not enough, WS-Security can help with data integrity and authentication Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 15

Anatomy of the SOA Security challenge The need for end to end security Today’s Anatomy of the SOA Security challenge The need for end to end security Today’s technologies like SSL do not provide end to end protection Master. Card 5094289200882312 032007 John Doe Only. The. Paranoid. Survive 1 34. 90

2111 NE 25 th Avenue
Hillsboro OR 97124 USA Master. Card 5094289200882312 032007 WS-Security enables content owners to control who has access to it
2111 NE 25 th Avenue
Hillsboro OR 97124 USA
Content based security is the only solution for securing enterprise integration Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 16

Anatomy of the SOA Security challenge The need for multiple signatures Each council member Anatomy of the SOA Security challenge The need for multiple signatures Each council member signs the resolution, no matter if they voted yes or no NYC’s townhouse Council member The Mayor verifies the signatures, decides to approve or veto the resolution, and finally signs it Finally, the City clerk verifies the signatures of the resolution, and publishes it on the City’s charter City clerk signature Mayor Bill signature voting signature verification Council member Resolution Council member City council signature verification signature City’s charter Content based security allows distributed transactions to be executed across vendors solutions Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 17

Anatomy of the SOA Security challenge The need for multiple levels of clearance Field Anatomy of the SOA Security challenge The need for multiple levels of clearance Field officers Headquarters Field officer verifies signature and decrypts the top secret information Field troops decrypt their orders Secret clearance Logistic information Mission execution details Mission Goal Headquarters sends information to field officer. Information is both encrypted and signed Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners Troops Top level clearance The rest of the information is forwarded to field troops. Message could include all the orders, or just the specifics to each rank Confidential clearance 18

So what is new in all of this? • The solution for all theses So what is new in all of this? • The solution for all theses problems are well known – All this can be done with standard cryptography • But…. – Security is tricky: one mistake and it’s over – Custom solutions rarely help systems integration • WS-Security is – An OPEN STANDARD • It is the work of lots of smart individuals – It is implemented by several vendors (IBM, MS, Oracle, BEA, etc. ) • It is easy to provide security across systems – There open source implementations • More on this later… Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 19

Performance Considerations (i. e. there is no free lunch) Copyright © 2007, Intel Corporation. Performance Considerations (i. e. there is no free lunch) Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 20

How expensive is all this? SSL vs. WS-Security in Grid Computing • The experiment How expensive is all this? SSL vs. WS-Security in Grid Computing • The experiment (by Shirasuna et. al. , 2004) – Goal: compare SSL & WS-Security for message integrity • 8 clients saturate a server with small messages (5 bytes payload) – Environment • XSUL using Apache XML Security library (XSUL is faster than GT 3. 2) • Tomcat 4. 1. 30. Sun J 2 SE 1. 4. 2_04, Linux 2. 4. 21 • Dual Xeon 2. 8 GHz with 2 GB of RAM SSL adds a 10 X slowdown, WS-Security adds 100 X! (most of this cost is XML processing) Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 21

What is the culprit? • Let’s do some back of the envelope calculations WS-Security What is the culprit? • Let’s do some back of the envelope calculations WS-Security (enc. only) RSA (No. operations) HTTPS 6 6 DES (% of content processed) 150% 300% XML overhead (% of content processed) 150% 0 0 6 No. SSL Negotiations – SSL requires more crypto than WS-Security!! • About the XML overhead (Liu et. al. , 2005) – It takes 10 ms to sign or encrypt 100 KB – Using WS-Security takes 100 -200 ms to do the same – Environment • Sun’s J 2 SE 1. 4. 2 with Bouncy Castle (JCE) & Apache’s WSS 4 J • Linux 2. 4. 10 • Pentium 4 CPU 2. 79 GHz with 768 MB of RAM Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 22

What determines WS-Security performance? • Traditionally size is the main latency determinant • This What determines WS-Security performance? • Traditionally size is the main latency determinant • This question help us to encompass every existing workload – Remember the best case assumption It is not your father’s Word Document! Shape affects performance Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 23

Doing SOA with FLOSS Copyright © 2007, Intel Corporation. All rights reserved. *Other brands Doing SOA with FLOSS Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 24

Step One: Open Standards WS-Security WS-Trust SAML 2. 0 XML DSig XML Encryption WS-Reliable. Step One: Open Standards WS-Security WS-Trust SAML 2. 0 XML DSig XML Encryption WS-Reliable. Messaging WSDL XML Schema XPATH 2. 0 WS-Secure. Conversation SOAP 1. 2 WS-Security. Policy XML UDDI Open standards help Open Source compete on a level plain field Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 25

Step Two: Open Software Stacks App App Tomcat / JBoss Sun JVM / Harmony Step Two: Open Software Stacks App App Tomcat / JBoss Sun JVM / Harmony Standalone App g. SOAP Apache XML Security gcc Linux App WS-Security Rampart/WSS 4 J App Axis Stack Linux IBM JVM AIX Over $10 k in software Communication, Persistence, Management, Security, Transactions, Clustering/Scalability comes for FREE!! Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 26

Summary of the talk • SOA has changed the way we think about software Summary of the talk • SOA has changed the way we think about software • Business integration is now possible • We need to address security in order to keep the momentum – Eventually we will have large & agile B 2 B systems • WS-Security is open standard which is ready for the challenge • There are plenty of open software stacks to build SOA Q&A Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 27

Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 28

Why is c 14 n so demanding? Rules for canonicalization 1. 2. 3. 4. Why is c 14 n so demanding? Rules for canonicalization 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. The document is encoded in UTF-8 Line breaks normalized to #x. A on input, before parsing Attribute values are normalized, as if by a validating processor • This means that special characters inside an attribute value are replaces by they corresponding character reference Character and parsed entity references are replaced • This means that character references such as #x. D are replaces by their real value. CDATA sections are replaced with their character content The XML declaration and document type declaration (DTD) are removed Empty elements are converted to start-end tag pairs • An empty element is one that does not contain any text or sub-elements, and is generally denoted by Whitespace outside of the document element and within start and end tags is normalized All whitespace in character content is retained (excluding characters removed during line feed normalization) Attribute value delimiters are set to quotation marks (double quotes) Special characters in attribute values and character content are replaced by character references Superfluous namespace declarations are removed from each element • If a node contains a namespace that is already present in an ancestor element, then the namespace node will be removed. Default attributes are added to each element • This means that default attributes will be added to the c 14 n output (the ones that are defined on the DTD, if it is present) Lexicographic order is imposed on the namespace declarations and attributes of each element Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 29

Canonicalization example • Demonstrates: Retention of namespace prefixes from original document Empty element conversion Canonicalization example • Demonstrates: Retention of namespace prefixes from original document Empty element conversion to start-end tag pair Normalization of whitespace in start and end tags Relative order of namespace and attribute axes Lexicographic ordering of namespace and attribute axes Elimination of superfluous namespace declarations Addition of default attribute Original XML Canonicalized XML Copyright © 2007, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners 30