OTM-SOA - By, Mark Hagan

36
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 1

description

Service Oriented Architecture (SOA) implementations are gaining popularity. OTM application integration with these implementations requires an increased level of support for industry standards; specifically Web Services Security (WSS). This presentation describes the WSS capabilities added to OTM v6.3 and how this differs from, and expands on previous support. It also discusses some potential future enhancements in this area (e.g. XML schema design).

Transcript of OTM-SOA - By, Mark Hagan

Page 1: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 1

Page 2: OTM-SOA - By, Mark Hagan

OTM and SOA Mark Hagan Principal Software Engineer Oracle Product Development

Page 3: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 3

Content

What is SOA?

What is Web Services Security?

Web Services Security in OTM

Futures…

Page 4: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 4

PARADIGM

Page 5: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 5

Content

What is SOA?

What is Web Services Security?

Web Services Security in OTM

Futures…

Page 6: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 6

What is SOA?

Term originated from IBM Web Services work in 2000? Million and one attempts to produce a ‘catchy’ paragraph

– Strategy (both IT and Business) – Services – Interoperable – Standards

Aims to address perceived limitations in previous application integration techniques.

Service Oriented Architecture

Page 7: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 7

SOA Evolution

Not just about enabling a legacy application to be called as a web service. High level business process design SOA Maturity Model Availability of tools

– Server : Oracle SOA Suite (+ others, I guess!) – Designer : Oracle JDeveloper (ditto)

SCA – Service Component Architecture (OASIS Standard)

Service Oriented Architecture – ‘Plateau of Productivity’

Page 8: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 8

What are Web Services?

Not just an API! Salient points

– Platform independent (XML everywhere…) – Transport independent (i.e. not tied to a specific protocol) – Loosely coupled – Contract – Standards (next slide!)

Page 9: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 9

What are Web Services?

Gradual emergence of standards – XML & XSD – SOAP – WSDL

[Side note: even W3C gets confused between Web Service Definition Language and Web Services Description Language!]

– Java Platform JAX-RPC JAX-WS (initially called JAX-RPC 2.0)

Page 10: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 10

SOAP Envelope

Anatomy of a SOAP Message

SOAP Header

SOAP Body

Message Payload

Page 11: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 11

Anatomy of a WSDL

Definition

Messages

Operations

Ports

Page 12: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 12

Content

What is SOA?

What is Web Services Security?

Web Services Security in OTM

Futures…

Page 13: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 13

Security Before ‘Web Services Security’

Credentials were passed according to transport protocol – For example, SOAP over HTTP used Basic Authentication HTTP Header

Encryption required SOAP over HTTPS Commonly include credentials in the message itself.

– OTM accepted Transmission Header with username/password or username and IP authentication.

Applies to OTM versions from v5.0 to v6.2

Page 14: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 14

Web Services Security – WS-Security

OASIS Specification of an XML syntax for security related data in the SOAP Header Supports different ‘profiles’

– Username Token Profile – SAML Token Profile – X.509 Token Profile – Kerberos Token Profile – Rights Expression Language (REL) Token Profile

WSS: SOAP Message Security v1.1

Page 15: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 15

Web Services Policy – WS-Policy

W3C Recommendation for an XML syntax to describe the requirements and capabilities of a web service. Defines the concept of an ‘assertion’ and how to declare policy

alternatives. Examples :-

– Security – Transactions – Reliable Messaging – Addressing

WSP: Web Service Policy 1.5 – Framework & Attachment

Page 16: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 16

Web Services Security Policy – WS-SecurityPolicy

OASIS Specification for WSS related policy assertions Service can specify which token profiles are required or supported Service can specify which transport protocols are required or

supported Declared in the service WSDL

WSSP: WS-SecurityPolicy 1.3

Page 17: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 17

WSSP Example – Username Token

Page 18: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 18

Content

What is SOA?

What is Web Services Security?

Web Services Security in OTM

Futures…

Page 19: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 19

WSS in OTM v6.2 - Inbound

Partial support for Username Token Profile Full support for HTTP and HTTPS Not declared in WSDL Password Digest was initially supported but may be removed

Page 20: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 20

WSS in OTM v6.2 - Outbound

Partial support for Username Token Profile Full support for HTTP and HTTPS External WSDL is not parsed for WSSP assertions Password Digest was initially supported but may be removed Requires settings on Web Service and External System records in

OTM.

Page 21: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 21

Web Service Manager

Page 22: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 22

External System Manager

Page 23: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 23

WSS in OTM v6.3 - Inbound

Full support for Username Token Profile (except Password Digest type) Full support for HTTP and HTTPS Full support for Message Encryption Declares security policy in WSDL for inbound services

– Defaults to Username Token over HTTPS – Policy can be customised

Page 24: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 24

Page 25: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 25

Custom Policy

Installation deploys a policy file for each web service – <otm home>/glog/glog_resources/policies/<service name>-Policy.xml – For example,

<otm home>/glog/glog_resources/policies/IntXmlService-Policy.xml To override default policy – DO NOT EDIT base file

– Create file under configured custom directory, for example <otm home>/glog/glog_resources/custom/policies/IntXmlService-

Policy.xml

Page 26: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 26

Custom Policy (contd.)

Sample files installed – otm-default-policy.xml

policy installed by default (currently Username Token over HTTPS) – otm-Wssp1.2-2007-Https-UsernameToken-Plain.template.xml – otm-Wssp1.2-2007-UsernameToken-Plain.template.xml – otm-Wssp1.2-

wss10_username_token_with_message_protection_policy.template.xml

Page 27: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 27

WSS in OTM v6.3 – Outbound

Full support for Username Token Profile (except Password Digest type) Full support for HTTP and HTTPS Full support for Message Encryption WebLogic Server handles parsing of policy assertions

– Requires additional WebLogic Server administration All pre-existing outbound Web Services defined in OTM will operate

according to v6.2 logic i.e. will not automatically have access to v6.3 capability

Page 28: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 28

WSS in OTM v6.3 – Outbound (contd.)

WSDL Document content needs to be URL Existing records would not contain any WS-Policy details and so need

to be reloaded. Use of Message Encryption requires additional administration tasks.

– Storage of external X.509 Certificate in WebLogic keystore – New Web Service Security Configuration via Console (or config.xml) – Configure OTM property to match keystore alias to service endpoint

glog.webservice.pki.alias.myalias=https://myserver/services/myEncryptionService

Page 29: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 29

WSS in OTM v6.3 – Outbound (contd.) Credential Mapping

Page 30: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 30

Content

What is SOA?

What is Web Services Security?

Web Services Security in OTM

Futures…

Page 31: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 31

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

Page 32: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 32

Future…

Support for additional WSS profiles – SAML Token – X.509 Token

Split GLogXML.xsd schema Namespace Versions Ability to attach ‘client’ policy override to outbound services Policy attachment via WebLogic Console and/or Deployment tools

Page 33: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 33

Glossary

Term Description OASIS Organization for the Advancement of Structured Information Standards

XSD XML Schema Definition

WSS Web Services Security

SAML Security Assertion Markup Language

X.509 ISO/IETF standard format for Public Key certificates.

JAX-RPC Java API for XML-based RPC (Remote Procedure Call)

JAX-WS Java API for XML-based Web Services (successor to JAX-RPC)

Page 34: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 34

References

Term Description OTM Documentation Library http://docs.oracle.com/cd/E38437_01/otm/html/docset.html

(Administration Guide, Integration Guide and Security Guide) OASIS Home - https://www.oasis-open.org/standards

WSS - https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wss WSSP - http://docs.oasis-open.org/ws-sx/ws-securitypolicy/v1.3/os/ws-securitypolicy-1.3-spec-os.html

W3C WSDL - http://www.w3.org/TR/#tr_WSDL WSP - http://www.w3.org/TR/#tr_Web_Services_Policy

Page 35: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 35

Page 36: OTM-SOA - By, Mark Hagan

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 36