LXXXVI API GOVERNANCE AND MANAGEMENT

Issue
September/October
LXXXVI
www.servicetechmag.com
API GOVERNANCE AND
MANAGEMENT
BY
LONGJI TANG , MARK LITTLE
Security and Identity Management
Applied to SOA - Part II
by Jose Luiz Berg
A Look at Service-Driven
Industry Models
by Thomas Erl, Clive Gee, Jürgen Kress, Berthold Maier,
Hajo Normann, Pethuru Cheliah, Leo Shuster, Bernd Trops,
Clemens Utschig-Utschig, Philip Wik, Torsten Winterberg
$9.99USD $9.69CAD ¤6.99
Issue LXXXVI • September/October 2014
Contents
3
5
17
29
36
From the Editor
PUBLISHER
Arcitura Education Inc.
EDITOR
Thomas Erl
API Governance and Management
by Longji Tang, Mark Little
COPY EDITOR
Natalie Gitt
A Look at Service-Driven Industry Models
by Jose Luiz Berg
Security and Identity Management Applied to
SOA - Part II
by Thomas Erl, Clive Gee, Jürgen Kress, Berthold Maier,
Hajo Normann, Pethuru Raj, Leo Shuster, Bernd Trops,
Clemens Utschig-Utschig, Philip Wik,
Torsten Winterberg,
Contributors
Copyright © Arcitura Education Inc.
2
SUPERVISING
PRODUCTION MANAGER
Ivana Lee
COVER DESIGN
Jasper Paladino
WEB DESIGN
Jasper Paladino
CONTRIBUTORS
Jose Luiz Berg
Thomas Erl
Clive Gee
Jürgen Kress
Mark Little
Berthold Maier
Hajo Normann
Pethuru Raj
Leo Shuster
Longji Tang
Bernd Trops
Clemens Utschig-Utschig
Philip Wik
Torsten Winterberg
www.servicetechmag.com
Issue LXXXVI • September/October 2014
From the Editor
Big Data technology and practices are becoming increasingly relevant
to IT enterprises. Many are discovering the extent to which traditional
data analysis and data science techniques have formed the foundation
for what Big Data has become in terms of a professional field of practice.
But what consistently distinguishes Big Data are orders of magnitude
to which those established techniques now need to be utilized and the
sometimes extreme conditions under which massive volumes of data
need to be processed. These and other necessities brought about by Big
Data processing demands have led to further layers of innovation in both
practice and technology that have built upon traditional data
science foundations.
Thomas Erl
Copyright © Arcitura Education Inc.
3
www.servicetechmag.com
October 20-24, 2014
London, UK
Certified Cloud Technology Professional
October 27-29, 2014
Lagos, Nigeria
Certified Cloud Professional
October 28-29, 2014
Petaling Jaya, Malaysia
Certified SOA Architect
November 3-7, 2014
Toronto, ON, Canada
Certified Cloud Virtualization Specialist
November 10-12, 2014
Santa Clara, CA, United States
Certified Big Data Science Professional
November 17-19, 2014
Las Vegas, NV, United States
Certified Big Data Science Professional
December 3-5, 2014
Santa Clara, CA, United States
Certified SOA Architect
December 8-12, 2014
Melbourne, VIC, Australia
Certified Cloud Architect
December 15-19, 2014
Las Vegas, NV, United States
Q4 2014 Workshop Calendar
Certified Big Data Scientist
Cloud Architect Certification
October 6-10, 2014
London, UK
SOA Consultant Certification
November 17-21, 2014
Bangkok, Thailand
SOA Security Specialist
Certification
October 13-17, 2014
Brasília, Brazil
Cloud Technology
Professional Certification
November 24-26, 2014
Sydney, NSW, Australia
Big Data Science
Professional Certification
October 16, 23, 30,
November 6, 13, 20
Hong Kong, Hong Kong
Cloud Technology
Professional Certification
November 24-26, 2014
Chennai, India
Cloud Virtualization Specialist
Certification
October 20-22, 2014
Rio de Janeiro, Brazil
Cloud Architect Certification
October 20-24, 2014
Sydney, NSW, Australia
Big Data Scientist
Certification
October 20-24, 2014
London, UK
Cloud Technology
Professional Certification
October 27-29, 2014
Lagos, Nigeria
Cloud Architect Certification
October 27-31, 2014
Dallas, TX, United States
Cloud Professional
Certification
October 28-29, 2014
Petaling Jaya, Malaysia
Big Data Scientist
Certification
November 3-5, 2014
Virtual (PST)
SOA Architect Certification
November 3-7, 2014
Toronto, ON, Canada
Cloud Virtualization Specialist
Certification
November 10-12, 2014
Santa Clara, CA, United
States
SOA Architect Certification
November 10-14, 2014
Munich, Germany
Cloud Architect Certification
November 10-14, 2014
Melbourne, VIC, Australia
SOA Architect Certification
November 10-14, 2014
Bangalore, India
Big Data Science
Professional Certification
November 17-19, 2014
Las Vegas, NV, United States
Cloud Technology
Professional Certification
November 17-19, 2014
Fairfax, VA, United States
Cloud Architect Certification
November 24-28, 2014
Naarden, Netherlands
Cloud Technology
Professional Certification
December 1-3, 2014
Naarden, Netherlands
Cloud Architect Certification
December 1-5, 2014
Virtual (PST)
Big Data Scientist
Certification
December 1-5, 2014
Las Vegas, NV, United States
SOA Architect Certification
December 1-5, 2014
Las Vegas, NV, United States
Cloud Architect Certification
December 1-5, 2014
Dallas, TX, United States
SOA Architect Certification
December 7-11, 2014
Dubai, UAE
Cloud Professional
Certification
December 8-9, 2014
Petaling Jaya, Malaysia
Cloud Technology
Professional Certification
December 8-10, 2014
Lagos, Nigeria
Big Data Science
Professional Certification
December 8-10, 2014
Bangalore, India
Big Data Consultant
Certification
December 8-12, 2014
Virtual (PST)
SOA Architect Certification
December 8-12, 2014
Melbourne, VIC, Australia
SOA Architect Certification
December 14-18, 2014
Riyadh, Saudi Arabia
SOA Architect Certification
December 15-19, 2014
Virtual (PST)
Cloud Architect Certification
December 15-19, 2014
Las Vegas, NV, United States
Big Data Science
Professional Certification
November 17-19, 2014
Dallas, TX, United States
Cloud Storage Specialist
Certification
January 5-7, 2015
Fairfax, VA, United States
SOA Consultant Certification
November 17-21, 2014
Virtual (PST)
Cloud Architect Certification
January 12-16, 2015
Toronto, ON, Canada
www.arcitura.com/workshops
Issue LXXXVI • September/October 2014
API Governance and Management
by Longji Tang, Professor, Hunan University, Mark Little, RedHat, UK & Computer Science of Newcastle
University, UK
Abstract: We live in an era of service computing with cloud computing platforms, social computing, and mobile
computing. One of the most significant characteristics of the era is that any device connects to any service and
any service connects to any data with a cost-effective way. The connection between device and service as well
as between service and data is built by modern Web APIs. The shift is not only for using software in particular
business, but also for engaging other business and people - internal developers, partners, customers, and
the world at large, through exposing software interfaces by APIs. The trend is creating a new business reality
- API Economy. It is leading an evolution of the traditional SOA paradigm to cloud-enabled, social-enabled,
and mobile-enabled modern lightweight SOA. There is increasing automation of processes, transactions, and
distribution across many industry sectors and organizations. This paper describes the API Economy and the
emergence of API management, its building blocks, its role in service infrastructure. Moreover, API-central
architecture patterns, its reference architecture, and its deployment topologies can be found in a newly coming
book
Service Infrastructure.
Emergence of API Management
The Application Programming Interface (API) is an old technology, which has been around for decades, the
rise of Web APIs, which includes new majority REST APIs, traditional SOAP-based APIs, and other, lead
APIs technology for building mash-up applications, getting data and services to mobile applications, and
connecting enterprises to their partners and cloud services. APIs have started their new life in modern elastic,
social, mobile world. With the modern Web APIs dramatically growing, and high availability through the
internet, increasingly business values, and becoming more and more important as the application landscape
of enterprises, APIs quality (security, performance, availability, …) and risk from exposing data and services by
using open APIs become main concerns to enterprises. Thus, API management is becoming a very important
core component in modern service infrastructure. In this section, the rise, development, and importance of API
management are described and discussed. Although API management is a newly defined term, we will see
API management is just an extension of SOA Management and provides new technologies and architectural
principles, such as developer portal, Key Management, and metering as well as billing facilities that SOA
management does not cover. API management is shaping the multi-channel and multi-tenant strategy crossorganizational boundaries.
API Economy
APIs have been around in hardware and software computing infrastructure for several decades. It has been
used as an important component in software systems for specifying how software components or systems
should interact with each other, such as, Microsoft Windows API or the Java Enterprise Edition API. However,
modern Web APIs are creating business miracle and changing IT landscape. Figure 1 shows you a history of
various popular APIs. The modern Web API is not generated from standards, like SOAP APIs, but innovated by
modern technology – cloud, mobile and social computing innovators and by the HTTP standard. Modern APIs
started around 2000 when saleforce.com officially launched its web-based, enterprise-class, and API-enabled
Copyright © Arcitura Education Inc.
5
www.servicetechmag.com
Issue LXXXVI • September/October 2014
automation called SaaS today, rising dramatically from 2008, and continuing to grow.
Figure 1 – Modern API Milestone
The API is continuing to grow with industry broadly adopting REST APIs. The API Economy has been formed
in terms of both API technology advantages and business innovation opportunities. The API technology
advantages include:
■■ REST API simplicity for building ecosystems.
■■ Easy integration for integrating apps, specifically, mobile apps with services – cloud services and enterprise
business services.
■■ Wider reach allowing anyone to create a new app, such as a website or a widget which can distribute
services and information to new audiences and in specific contexts that can be customized to provide
tailored user experiences through APIs.
■■ Exposing information and services for leveraging your investment in SOA assets.
■■ Providing API access allows content to be created once and automatically published or made available
through many channels. Your agency’s content is ready for easy sharing and redistribution to deliver your
mission directly to more citizens.
We see a lot of successful stories in cloud computing (such as Saleforce-SaaS, Google-PaaS, and AmazonIaaS), Social Computing (such as Facebook and Twitter), Mobile computing (such as Amazon, Foursquare),
and traditional eCommerce. Expedia generates more than $4 billion of revenue a year through its API-powered
affiliate network. PayPal processed over $14 billion in payment transactions in 2012 and reached $27 billion
in 2013 via its API-enabled business network. Figure 2 depicts both API growth and API Economy booming
scene. PragrammableWeb listed 8826 public APIs on March 24, 2013 (see Figure 2), the number of public
APIs is projected to reach 30,000 by 2016 by a report .
These numbers not only indicate APIs are growing quickly and the API Economy is booming, but also reflect
the important of APIs and their management. In fact, the API is becoming the heart of your mobile app strategy:
exposing APIs has gained traction as organization realize that leveraging their data and services across
boundaries creates more innovation that drives value to all stakeholders, API Gateway is becoming a core
Copyright © Arcitura Education Inc.
6
www.servicetechmag.com
Issue LXXXVI • September/October 2014
component in mobile computing architecture, API management is becoming a new front tier for
enterprise SOA.
Figure 2 – API Growth and API Economy Booming
Definition of API Economy: The API Economy is the economy where companies expose their (internal)
business assets or services in the form of (Web) APIs to parties with the goal of unlocking additional
business value through the creation of new asset classes. (Cutter Consortium, 2013)
The above definition is based on “economy” prospective. This paper defines the API Economy from a valueadded architectural style prospective:
Definition of API Economy From technical prospective: The API Economy can be defined as a software
architectural style that combines modern web API capacity with API business model. It has two main
principles on information resources and services:
■■ Build value-add ecosystem for exposing information resources and infrastructure as well as platform
resources through web-based APIs
■■ Create new value-add resources via hybrid style APIs combining different type APIs – public APIs (open
APIs), partners’ APIs (open to partners), and private APIs (internal APIs).
The API Economy is changing not only the way companies do business, but also the way they build their
Copyright © Arcitura Education Inc.
7
www.servicetechmag.com
Issue LXXXVI • September/October 2014
service infrastructure and connect their services to customers. The API Economy is emerging in both the IT
world and business world. The traditional way to expose companies’ information resources or services (1993 –
2000) mainly by web applications is moving to new API-enabled ways through multiple channels which include
web, mobile devices, internet TV, connected applications as well as services, connected machines (such as
cars), and partners’ applications as well as services.
Compared with traditional enterprises, API-enabled enterprises are agile and open and have the following
characteristics:
1. Adopting flexible as well as simple APIs as major channels in their business
2. Enabling business transactions to be driven anywhere and anytime through API layer in
service infrastructure
3. Providing web, mobile, and other client interfaces as a layer on top of APIs
4. Allowing customers to integrate with core service infrastructure directly through well-defined APIs, such as
Amazon Elastic Compute Cloud and HP/IBM OpenStack APIs.
In the next section, we will show how API Economy impacts companies’ service infrastructure and becomes
the driver of API management.
Driving Forces of API Management
In the last section, we described the API Economy, its history, concept, and the characteristics of API-enabled
enterprises. The driving forces behind the API Economy include:
■■ Business Consumers – they expect to access data and content anywhere and anytime across multiple
devices and channels.
■■ Business Companies – they are service providers which want to re-invent interactions with customers,
supplies, and partners in cost-effective or ecosystem ways. They expect to speed business and IT innovation
and increase scale cross organization boundaries.
■■ Service Computing – it is based on SOA principles. All APIs are services, which connect to resources of
information, infrastructure, and platform, and existing services built on SOA architectural style.
■■ Cloud Computing – which allows enterprises share their resources and services cross their boundaries
through public clouds or cross organizations inside enterprise through private cloud. APIs are the simply and
flexible way to allow enterprise to share their resources and services internally and externally.
■■ Mobile computing – mobile devices are overtaking PCs as the most broadly used devices to access
information resources. Moreover, mobile computing wants a lightweight approach for connecting to
enterprises’ data and services due to mobile devices limited resources. Therefore, mobile computing
becomes one of the major driving forces for adopting and developing APIs.
■■ Social computing – which is open to everyone and every device. Facebook and Twitter are using simple
RESTful APIs to connect their social network and social services and allow developers and enterprises to
integrate and access their core social platform for their business.
■■ Big Data and Analytics – Big Data refers to relatively large amounts of structured and unstructured data that
require machine-based systems and technologies in order to be fully analyzed. Cloud-based APIs can help
Copyright © Arcitura Education Inc.
8
www.servicetechmag.com
Issue LXXXVI • September/October 2014
companies at both analyzing and distributing big digital data cheaply. The Apache open Hadoop API plus
NoSQL database technology, such as MongoDB can make Big Data Analytics cost-effective, scalable, and
fault-tolerant.
■■ Internet of Things (IoT) and Machine to Machine (M2M) – IoT and M2M is a future technology and business,
which is one of the new driving forces for the API Economy. API Economy players, such as Layer7 and
Apigee predicted how M2M and IoT impacting API Economy future . The APIs will be broadly applied to IoT
and M2M as smart devices’ Web interfaces connecting to IoT services. The API gateway will be one of the
core components in IoT and M2M architectures.
Exposing resources and services to people and allowing developers and partners to access and integrate with
companies’ core business through APIs increase opportunities and innovation. However, it also increases risks
and challenges that include:
■■ APIs are developer-defined interfaces to services. They are used to encapsulate complexity in application
services and selectively expose functionality. Developers can build new solutions based on APIs. However,
not all APIs are well defined and perform well. Using a bad API or misusing a good API will cause software
system failure or performance issue. A Bad API may put your system at risk. The following two REST APIs
represent a security risk. The first one puts the API key in its URL, you may get charge from the service
provider if your API key is stolen by other people. The second one’s risk is more serious, since its transaction
is not protected by both SSL and API key.
■■ https://example.com/controller/<id>/action?apiKey=a53f435643de32
■■ http://example.com/controller//action?apiKey=a53f435643de32
■■ API quality assurance such as availability, scalability, reliability, security, is a main concern for enterprises
using open APIs. In today’s global economy and complicated IT environment, to make a business
transaction, you may need to use internal APIs to connect to core business services in your own data
center, use partners’ APIs to do a B2B transaction, and you may need to use an open APIs to get additional
information. Any API failure in the transaction will cause some failure of the transaction and impact your
customer experience. To guarantee API infrastructure quality is a big challenge. The challenge include:
■■ To guarantee API software quality, must have good API design time governance.
■■ To guarantee API runtime quality, must have good API runtime governance. Modern composite applications
are aggregating and consuming multiple APIs – private, partner, and public APIs at a staggering pace in
order to achieve business goals. To ensure API integrity is a big challenge.
■■ The API governance as extension of exiting SOA governance is new to enterprises. For instance, API testing
is a must-have process in enterprise software development lifecycle, to ensure APIs are delivering the
necessary level of security, reliability, and performance.
■■ API service level agreements are concerns for both API providers and API consumers. To reach the
agreements and delivery that the API consumers’ want is also a challenge. From a report from Parasoft,
90% of respondents report that APIs failed to meet their expectations, in which 68% encountered reliability/
functionality issues; 42% met security issues; and 74% encountered performance issues.
■■ API security is one of the biggest concerns for enterprises. It includes service and infrastructure access
security, data security, and trust. API security compliance and protection of services as well as data
Copyright © Arcitura Education Inc.
9
www.servicetechmag.com
Issue LXXXVI • September/October 2014
are challenges.
■■ API consumers have risks for moving to the new API business model, since they depend on T&C of
API providers.
■■ API Governance is a big challenge, since APIs include internal, external, and open APIs which support
different protocols, SOAP, REST, JMS, ... They are developed by different vendors, software startups, and
individuals. The API governance challenges include:
■■ Design Time Governance, such as API versioning, design standards, specifically new REST-style API
development standards.
■■ Run time governance, such as API monitoring, API deployment, and dynamic provisioning.
Facing the above risks and challenges of API Economy, API management is working to reduce the risks,
providing solutions to the challenges and protecting API businesses. API management is defined in the next
subsection and the relationship between it and SOA governance is discussed.
Definition of API Management
We have seen that the API Economy requires a new service infrastructure – API management that provides
API governance and powers the API Economy. This section first defines API management, and then discusses
the relationship of SOA and Cloud governance (Chapter 18) and API management.
Definition of API Management: The API management is a set of processes and technologies for governing
APIs in a secure and scalable service infrastructure. It includes a minimum set of required functionalities:
■■ API Developer Portal for managing API development and providing API lifecycle management, and the
process and interface for publishing, discovering, maintaining, and overseeing APIs.
■■ Automate and control connections between an API and the API consuming applications.
■■ Monitor API traffic and other quality metrics, such as performance as well as reliability (for instance error
rate), from applications which use it.
■■ Provide proper API versioning technology to ensure consistency between multiple API implementations
and versions.
■■ Ensure API scale and improve application performance by dynamic provisioning technology and caching
mechanisms.
■■ Protect API from misuse and any other vulnerability in API access point or endpoint by providing API
security solutions which include basic security, such as SSL as well as TLS, and advanced API security,
such as API access authentication as well as authorization, key management, and perimeter defense for
enterprise-class APIs.
■■ Provide capability for metering and billing API utilization of commercial APIs.
From the definition of API management we can see that some functionalities, such as monitoring, security
are the same as basic SOA governance and management. However, a lot of new functionalities provided by
Copyright © Arcitura Education Inc.
10
www.servicetechmag.com
Issue LXXXVI • September/October 2014
API management, such as API developer portal, key management, and metering as well as billing capacities,
are never provided by SOA management. Therefore, API management extends SOA governance and
management for new API economy and improving enterprise architecture agility. By Gartner’s research, the
hybrid approaches with both existing SOA governance and API management can be defined as the Application
Services Governance that provides solutions and technologies for guaranteeing success of existing SOA
approaches and new API economy.
Role of API Management in Service Infrastructure
API Tier in App Services Infrastructure
The API has become a tier in modern application services compute infrastructure and the API tier is playing a
more and more important role. Figure 3 describes the typical API tiers in Application Services Infrastructure.
There are two different API tiers:
■■ API Tier between applications and middleware and/or ESB, which is in the scope of API governance and
managed by API management technology, such as the API gateway. The tier is for applications consuming
resources and services from backend systems. The majority of the API tier is REST-style API or Web API,
and JSON is used as the data exchange format. Another popular API is SOAP-based API which is often
used for consuming SOAP web services. Strictly speaking, a traditional (or classical) API is defined as an
access method to a service (or a service interface, according to SOA terminology). The SOAP-based API is
a kind of traditional API that can be viewed as an in process service. The Web API is a new kind of API that
is a remote API service based on HTTP. We mainly discuss the API governance and management for the
API tier in this paper.
Copyright © Arcitura Education Inc.
11
www.servicetechmag.com
Issue LXXXVI • September/October 2014
API tier between middleware or ESB and application services that include existing SOAP web services, Java
Enterprise Edition services, .NET MCF services, messaging services, data storage, and other services that are
governed and managed by enterprise SOA governance.
Figure 3 – API Tiers in App Services Compute Infrastructure
API Gateway and its Role in App Service Infrastructure
The API economy introduced a new API tier in modern application service compute infrastructure as shown
in Figure 3. The API tier is becoming a critical bridge from customers to enterprise services, from enterprise
to cloud services as well as your partners’ services, and from one cloud to another cloud. Further, the APIs
include internal, external, and public APIs. Therefore API security, performance, routing, and multi-tenancy
become very challenge for the new API-centric architecture. API management is emerging for governing and
managing APIs. In general, API management consists of the following main components:
■■ API Portal – which is a design-time API governance tool for managing API registry (or publishing), API profile
(or documentation), API control, and API development lifecycle.
■■ API Gateway – which is the core API runtime governance component for managing API runtime behaviors,
such as routing, multi-tenancy, security (identity, authentication as well as authorization).
■■ API Service Manager – which is a component for managing API lifecycle, such as migration, dynamic
versioning, deployment, configuration, API changes (such as policy change, configuration change)
■■ API Monitor – which is part of API runtime governance components for metering the API runtime behaviors,
such as performance, usage.
■■ API Billing or Chargeback – Billing is for utility-oriented public API, such as Amazon EC2 API, and
Chargeback in case of on-premise or private cloud. Both are based on metered usage.
Copyright © Arcitura Education Inc.
12
www.servicetechmag.com
Issue LXXXVI • September/October 2014
In this section, the API gateway and its role in service infrastructure are described and discussed. API gateway
consists of the following main common components:
■■ API routing manager
■■ API security manager (such as API key management, OAuth and OpenID)
■■ API mediation
For example, Layer7 has a family of API gateways that are shown in the following Table 1:
API Gateway
Description
API Proxy
provide the core functionalities needed for
enterprise-scale API security and management
CloudConnect Gateway
Provide connectivity for accessing SaaS application
and other cloud services securely and seamlessly
SOA Gateway
Provide centralized governance services integrated
across the extended enterprise
Mobile Access Gateway
Provide capacity to connect mobile devices and
apps to open enterprise information assets and
services securely and efficiently
Table 1 – Layer7 API Gateways
The API Gateway – lightweight service mediator simplifying application delivery stack, which acts as a control
point between enterprise service infrastructure and the outside world accessed through APIs, which can
provide the following main features to modern service compute infrastructure:
■■ Integration – API gateways can integrate with existing Identity Management (IM) infrastructure, such as
CA SiteMinder, to perform both authentication and authorization of API message traffic. API gateway
can integrate with existing dynamic service provisioning and offer a highly flexible and scalable solution
architecture.
■■ Anypoint Connectivity – API gateways allow applications to invoke services that run anywhere as well as
anytime (such as cloud services, mobile services), and allow apps to seamlessly move any services around
at will without affecting existing service infrastructure.
■■ Mediation – API messaging routing is one of the API gateway’s main features. It extends SOA mediation and
deliver API message between service consumers and service providers. API gateway routes data, message
based on user’s identity, content types, therefore it enables data and messages to be sent to appropriate
applications securely. Governance – API gateways provide centralized management for API changes, API
traffic, API deployment, policy enforcement, and API issue reporting.
Copyright © Arcitura Education Inc.
13
www.servicetechmag.com
Issue LXXXVI • September/October 2014
■■ Security – API gateways enable enterprises to secure their Web APIs against hackers’ attacks and API
abuse. It can be a central security checkpoint through its support to broad security standards, such as SSO,
OAuth 2.0, SAML, OpenID. For instance, an API gateway can authenticate internal clients by userid and
password, and then it can issue SAML tokens that used to for identity propagation to application servers.
■■ Transaction – enterprise-class API gateways also supports business transaction through meeting audit
requirement as well as PCI compliance and securing sensitive data.
■■ Performance – some API gateways also provide caching technology for increasing performance, such as
Apigee API gateway. Some API gateway integrates XML Accelerate Engine (VXA) to make XML processing
faster, such as the Oracle API gateway.
Key Takeaways
We have introduced API Governance and Management in this paper. The key takeaways are
■■ Cloud computing, mobile computing and social computing drive the API Economy. It is a new IT development
trend that leads IT innovation and IT alignment with its business.
■■ APIs become a primary customer interface for technology-driven products and services and a key channel
for driving revenue and brand engagement.
■■ APIs increase exposure of enterprise services and data; therefore, increase value of in services and data.
■■ API management is the key for API Economy success. It is an extension of SOA governance and
management and one of core components in modern service infrastructure. It is playing a central point for
API-Centric service system integration.
■■ API-Centric architecture is another enterprise architecture shift. Adopting API-Centric enterprise architecture
can improve security, agility, scalability, and cost-effectiveness of the IT service infrastructure.
Copyright © Arcitura Education Inc.
14
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Longji Tang
Longji Tang serves as a Senior Technical Advisor at FedEx’s Information Technology Division
where he has acted as a tech lead and/or architect on several critical eCommerce projects.
Currently, Longji is the lead project manager for FedEx.com’s Data Center Modernization
project. His research focuses on software architecture and design, service-oriented
architecture, service-oriented cloud computing and application, and system modeling and
formalism. Prior to his tenure with FedEx, Longji worked from 1995-2000 as an Information
System and Software Engineering Consultant at Caterpillar and IBM. He has published
more than 20 research papers from numeric analysis to computer applications in Journal
of Computational Mathematics, Acta Mathematica Scienia and other publications. After
graduating from Hunan University with a Bachelor of Engineering degree in Electrical
Engineering in 1980, he worked as an associate research fellow at the Hunan Computing
Center from 1980 to 1992. He began graduate studies at Penn State University in 1992 and
graduated in 1995 with a Master of Engineering degree in Computer Science & Engineering
and a Master of Art degree in Applied Mathematics. Longji has undertaken his PhD studies in
Software Engineering as a part-time student at the University of Texas at Dallas since June,
2002. He obtained his PhD degree in 2011.
Contributions
■■ Enterprise Mobile Services Architecture: Challenges and Approaches - Part III
■■ Enterprise Mobile Services Architecture: Challenges and Approaches - Part II
■■ Enterprise Mobile Services Architecture: Challenges and Approaches Part I
■■ Modeling and Analyzing Enterprise Cloud Service Architecture - Part I
■■ Modeling and Analyzing Enterprise Cloud Service Architecture - Part II
■■ SLA-Aware Enterprise Service Computing - Part II
Mark Little
Dr. Mark Little is VP Engineering at Red Hat where he leads JBoss technical direction,
research, and development. Prior to this he was the SOA Technical Development Manager
and the Director of Standards. He was also the Chief Architect and Co-Founder at Arjuna
Technologies, as well as a Distinguished Engineer at Hewlett Packard. He has worked
in the area of reliable distributed systems since the mid-eighties. His Ph.D.f was on faulttolerant distributed systems, replication, and transactions. He is currently also a professor at
Newcastle University.
Contributions
■■ API Governance and Management
Copyright © Arcitura Education Inc.
15
www.servicetechmag.com
January 5-7, 2015
Fairfax, VA, United States
Certified Cloud Architect
January 18-22, 2015
Dubai, UAE
Certified SOA Architect
January 26-30, 2015
Fairfax, VA, United States
Certified Big Data Science Professional
February 9-11, 2015
Toronto, ON, Canada
Certified SOA Governance Specialist
February 9-11, 2015
Virtual (PST)
Certified SOA Architect
February 16-20, 2015
Bangalore, India
Certified SOA Consultant
March 2-6, 2015
Virtual (PST)
Certified Big Data Scientist
March 23-27, 2015
Fairfax, VA, United States
Certified Cloud Architect
November 23-27, 2015
Naarden, Netherlands
Q1 2015 Workshop Calendar
Certified Cloud Storage Specialist
SOA Architect Certification
January 12-16, 2015
Virtual (PST)
Cloud Architect Certification
March 2-6, 2015
Las Vegas, NV, United States
Cloud Architect Certification
January 18-22, 2015
Dubai, UAE
SOA Architect Certification
March 8-12, 2015
Dubai, UAE
Big Data Scientist
Certification
January 19-23, 2015
London, UK
Big Data Science
Professional Certification
March 9-11, 2015
Bangalore, India
Cloud Technology
Professional Certification
January 21-23, 2015
Las Vegas, NV, United States
SOA Architect Certification
March 9-13, 2015
Melbourne, VIC, Australia
Cloud Virtualization Specialist
Certification
January 26-28, 2015
Virtual (PST)
SOA Architect Certification
January 26-30, 2015
Fairfax, VA, United States
SOA Architect Certification
February 2-6, 2015
Utrecht, Netherlands
SOA Architect Certification
February 2-6, 2015
Toronto, ON, Canada
SOA Architect Certification
March 9-13, 2015
Frankfurt, Germany
SOA Architect Certification
March 15-19, 2015
Riyadh, Saudi Arabia
Big Data Consultant
Certification
March 16-20, 2015
London, UK
SOA Architect Certification
March 16-20, 2015
Las Vegas, NV, United States
Cloud Architect Certification
February 2-6, 2015
Sydney, NSW, Australia
Cloud Technology
Professional Certification
March 18-20, 2015
Naarden, Netherlands
Big Data Science
Professional Certification
February 9-11, 2015
Toronto, ON, Canada
SOA Architect Certification
March 22-26, 2015
Dubai, UAE
SOA Governance Specialist
Certification
February 9-11, 2015
Virtual (PST)
SOA Architect Certification
February 9-13, 2015
Cape Town, South Africa
Cloud Professional
Certification
February 12-13, 2015
Petaling Jaya, Malaysia
Big Data Scientist
Certification
March 23-27, 2015
Fairfax, VA, United States
Cloud Architect Certification
March 23-27, 2015
Bangalore, India
Cloud Technology
Professional Certification
March 30 - April 1, 2015
Virtual (PST)
Cloud Architect Certification
February 16-20, 2015
Fairfax, VA, United States
Cloud Professional
Certification
April 16-17, 2015
Petaling Jaya, Malaysia
SOA Architect Certification
February 16-20, 2015
Bangalore, India
Cloud Architect Certification
May 18-22, 2015
Naarden, Netherlands
Big Data Scientist
Certification
February 18-20, 2015
Virtual (PST)
Cloud Technology
Professional Certification
June 24-26, 2015
Naarden, Netherlands
Cloud Storage Specialist
Certification
February 23-25, 2015
Virtual (PST)
Cloud Technology
Professional Certification
September 23-25, 2015
Naarden, Netherlands
Cloud Architect Certification
February 23-27, 2015
Naarden, Netherlands
Cloud Architect Certification
November 23-27, 2015
Naarden, Netherlands
Cloud Technology
Professional Certification
March 2-4, 2015
Chennai, India
Cloud Technology
Professional Certification
November 30 December 2, 2015
Naarden, Netherlands
SOA Consultant Certification
March 2-6, 2015
Virtual (PST)
www.arcitura.com/workshops
Issue LXXXVI • September/October 2014
Security and Identity Management Applied to SOA - Part II
by Jose Luiz Berg, Project Manager & Systems Architect, Enterprise Application Integration (EAI)
Web Services
To understand how to integrate Web Services with security infrastructure, we must first define some
fundamental concepts. We have already said in the previous chapter that the great challenge of security with
respect to Web Services, is that they break the boundaries between applications, transforming all applications
in a single big one. This statement is not true only regarding to Web Services, but as for any technology
allowing remote execution of routines. In this document, when you read Web Services, we are meaning remote
services, whatever the technology used. According to Oasis, a service has the following definition:
“A service is a mechanism to enable access to one or more capabilities, where the access is provided
using a prescribed interface and is exercised consistent with constraints and policies as specified by the
service description.1 A service is provided by an entity – the service provider – for use by others, but the
eventual consumers of the service may not be known to the service provider and may demonstrate uses of
the service beyond the scope originally conceived by the provider.”
So, despite the objective of this document is the integration of Web Services with security infrastructure, where
allowed, the term “service” is used to designate remote functionalities made available by an application, so that
the same definition can be applied to any technology used. The term Web Service (WS) is used only when we
drill down into the form of operation specific to Web Services.
When we talk about WS, we are assigning sets of functionalities made available by applications, which may be
consumed by sending messages using high-level protocols such as SOAP or REST, and a means of transport
such as HTTP or TCP/IP.
The challenge of building the security architecture for WS is to reconcile the internal systems development
standards with market standards and the functionalities provided by security systems, in order to obtain an
efficient pattern, easy to deploy, and where possible, compatible with other solutions available in the market. To
meet these requirements we are going to consider the use of the WS-Security standard, developed by Oasis
and a well know reference in the market today, being supported by the majority of the products.
WS-Security
The WS-Security standard was developed by Oasis, for addressing security requirements to WS. Unlike other
standards such as Liberty Alliance and OpenID, which can also be used in Web pages, WS-Security is geared
directly for use in service calls, made by a program, without human interaction.
As the standard was designed to be used in SOAP WS, data is always added within the tag “Header” of the
message, using the schema “.XSD “defined by Oasis. As an industry standard, is implemented in numerous
application servers and application firewalls, ensuring that the infrastructure will be compatible with market
products. Does not fit within the scope of this document detail the WS-Security standard, but only the main
services that are relevant to our study:
Copyright © Arcitura Education Inc.
17
www.servicetechmag.com
Issue LXXXVI • September/October 2014
■■ Encryption – allows the partial or total encryption of the message by setting the encrypted blocks and
algorithms required to perform the decryption. Public keys can also be included in the message, avoiding
that they need to be previously known for decryption.
■■ Digital signature – the same way as in the encryption, signatures may be applied over the entire message or
part of it, generating hashes using asymmetric encryption, and also including in the header of the message
all information necessary to perform hash validation.
■■ Authentication – supports various authentication formats, through the inclusion of the user data in the
message, using a component named “token”. Supports several types of tokens, such as login/user binary
tokens (X509 or Kerberos) or XML tokens, supporting the SAML assertion standard. In all cases, the tokens
are digitally signed, ensuring that they cannot be changed over the wire.
As the necessary information for operations are always included in the header of the message, it is possible
that all security validation can be done by a server without even knowing the rest of the message content.
There are also several libraries of routines available in the market that implement the pattern, and may be used
in the client or in the application server, to generate or validate messages. One of the most modern library
today is Apache XCF. With XCF, is possible to handle many features and message formats, with support for
the following technologies:
■■ Support for JAX-WS 2. x client and server
■■ JAX-WS API 2. synchronous, asynchronous and one-way x
■■ JAX-WS API 2. x Dynamic Invocation Interface (DII)
■■ Support for JAX-RS RESTful clients
■■ Support for wrapped styles and non-wrapped
■■ Support for XML messaging API
■■ Support for JavaScript and ECMAScript 4 XML (E4X)-client and server
■■ Support for CORBA
■■ Support for JBI with ServiceMix
The main problem for the implementation of Ws-Security standard is the complexity in the construction of the
message, which is quite easy in the case of Java, with the use of XCF, and .NET systems using Microsoft WSE
library. For PHP applications, can be used the WSO2 WSF/PHP, implementing a smaller set of functionality,
however, reaching normal needs.
Security components
Established the standards which may be used by services, we are now re-examining security components,
establishing how and where they will be implemented in the architecture. Whenever possible, the term service
is used to denote a generic service, on any technology, and WS when is a specific detail to Web Services.
Confidentiality
The use of encryption in the communication channel is a requirement that strongly affects the performance
of application servers. The cost of decrypting the entire message is high, and then should be used whenever
the data is quite sensitive, giving preference to encrypt only necessary data within the message. In case was
Copyright © Arcitura Education Inc.
18
www.servicetechmag.com
Issue LXXXVI • September/October 2014
considered that channel encryption is necessary, one should consider the possibility of accelerating the URL
through reverse proxies and use SSL only to then, forwarding the message using HTTP to the application
servers, centralizing the payload of encryption and exempting the servers responsible for implementing the
business routines. With this separation of tasks, you have full visibility over the cost of communications and
business processing, and for high loading implementations, you have the option of using hardware-accelerated
decryption. In some cases, the services are executed both from clients and from other servers. In this case,
you may mix various endpoints with different encryption schemes for each case.
Figure 1 – Executing a WS from a client and among application servers
The definition of which data needs to be kept confidential is part of the definition of business service being
implemented, and should be part of its requirements specification. In addition to obvious fields such as login
and password, there may be numerous other fields that should not be disclosed, usually involving monetary
values, internal identifiers, private personal data or even internal application passwords.
A possible attack with the breach of confidentiality would be monitoring valid messages searching for relevant
information, such as credit card numbers, customer code, valid transaction numbers, and then build a fake
message using these data, which could be accepted by the application, as it contains valid data.
Integrity
Data integrity is another requirement that must be answered along with the requirements specification of the
service which will be built, because most of the time this vision is only possible for those who know deeply the
meaning of the data to be processed.
The mechanism to ensure integrity is the digital signature, which can be applied over the entire contents of the
message, or only on the parts indicated as sensitive. Unless the cost of processing become infeasible, a good
practice is to always make the signature of all the content of the message, ensuring that can never be changed
in transit.
Copyright © Arcitura Education Inc.
19
www.servicetechmag.com
Issue LXXXVI • September/October 2014
One of the possible attacks that may be used about a WS is to intercept a message along the way, change any
field not encrypted and send it again to the same destination. Another common attack is called “replay”, which
consists of simply resubmit a message without changes, causing problems for the application, or even as a
form of DoS (denial of service) attack. If this type of attack is relevant, the application may use control fields,
dates, or even the hash of the message to identify and discard duplications.
In a B2C site, a WS can be used to finalize an order, including quantity of items sold. By intercepting the
message, an attacker can increase the quantity. In this case, you can use the hash to identify the breach of
the integrity of the message, refusing the operation. On the same site, the hacker could buy a product and
resending the finalizing message many times. In this case, the hash of the message is valid, and the operation
will be accepted unless any replay control was implemented.
Non-repudiation
The use of reciprocal certificate signatures depends on your client presenting valid public certificates for being
used in the operation. This is easier in a B2B scenario, but not in B2C, where the end user as no experience in
handling this kind of technology. This feature should be used in critical processes, normally involving high value
monetary operations, where needs to be ensured that the user cannot repudiate the operation later.
The most common attack in this category is breaking the secrecy of the certificate store. Many users rely on
weak passwords, write then down in a paper or simply lend their credentials for other people perform tasks in
his own. Another common problem is using the same password everywhere, including sites on the Internet with
inefficient credential storage. Upon discovering passwords for any user at a single site, a hacker will always try
to find other places where the user has a record and try the same password. Another common way to discover
the password is using free e-mail systems: many users use easy-to-remember passwords for these services
because they are not critical, but later registers in other sites using the same e-mail address. After guessing
your weak e-mail password, a hacker can access the functionality “forgot my password” in other sites, and the
password reset will be sent to the compromised mail service.
Once again, the definition of when a mutual digital signature should be used or not, must be in business
requirements, and should be established before building the service, defining which data should be signed and
which type of signature applied.
Authentication
In the world of services, authentication is a lot more complex than in regular applications, because must be
performed by a program, without a user to enter the password, and there is no session object to store data and
control the access.
An easy solution to this problem would be to send the login and encrypted password in all services, but the
problem is that to decrypt and validate password, applications would have to negotiate digital certificates, and
once an application has your plain password, it may use in the wrong way, treating unsafely or booking in log
files. A service is a black box to the requester, so sensitive data, such as passwords, should never be sent to
services where we have no control of how they will be handled.
To resolve this problem, the solution was the use of “assertions”. An assertion is simply an XML snippet,
usually containing the user ID, the date of authentication, the start and finish dates of the validity, the server
and the type of authentication that was issued, and a unique identifier from authentication. A digital signature
validates this XML, ensuring that it cannot be changed in the transmission. When you receive an assertion, a
server can identify where authentication was issued (IDP), and validate it using the server public certificate. If
Copyright © Arcitura Education Inc.
20
www.servicetechmag.com
Issue LXXXVI • September/October 2014
it is valid (your hash is correct), the IDP is trusted, is within the validity and the type of authentication matches
the expectations, he then can trust that the authentication was done by the caller, and the received user is the
consumer of the service. If it is necessary to execute a cascading service, the assertion may be included in the
message, ensuring that the requesting user is known to all services in the chain.
The validation of assertions inserted in messages may be done in two different ways:
■■ Using a reverse proxy – before being forwarded to the application server. In this case, all the WS will be
accelerated by him, and any call will be forwarded to the service provider only if contains valid assertions
according to the specification of the service.
■■ Directly in the application server – using WS-Security libraries available for validating the assertion.
Figure 2 – Assertion is validated in the reverse proxy
In both cases, the application will never have to worry about authentication, because if the call gets into
it, implies already contain the assertions specified and they are valid. The only reason for an application
to access the assertion will be to seek some further details about the authenticated user necessary for its
implementation.
Copyright © Arcitura Education Inc.
21
www.servicetechmag.com
Issue LXXXVI • September/October 2014
However, before authenticating a service, we need to identify which users are required for authentication.
There are several possibilities:
■■ No authentication services – not all services require authentication. A simple service that returns the list of
states for a country, as an example, does not need to identify the user who is requesting the information.
Some services of very low criticality, and usually to query data, do not require authentication.
■■ End-user authentication – is the most common case of authentication. Requires the credential of the user
who authenticated and is using the application.
■■ Service credential authentication – some services require specific credentials to run, instead of the
authenticated user. In this case, the service credential should be authenticated by WS, using login and
password, or preferably via digital certificate linked to the server that will consume the service. However,
even in this case, it is important that the service be aware which user has requested the operation, so the
assertion of the end user must also be included in the message, facilitating audit trails and reporting on
whose behalf the task is being performed. Another reason we should include the assertion of the end user, is
that the service being executed may need to chain a second service requiring this credential.
■■ Authentication with multiple users – in some special cases, multiple credentials may be required to perform
a service. When you call a call center and requests an operation, what is happening in fact, is that an
operator is logged in the system, performing the operation on your behalf. The operator then requests oral
confirmation of your data or typing a password or access code to confirm your identity. As we have seen
above, this is also a form of authentication, which can generate an assertion. During operation, the system
needs to perform some service that use service credential, so we have three assertions that can be sent:
the operation is performed by the service credential, by request of the attending, on behalf of the end user.
Still exists other forms of multiple authentication, as in cases of shared responsibility, in which two or more
people need to authenticate simultaneously to request an operation.
Once again, the decision of which type of authentication and what credentials will be required for each
business operation must be taken in accordance with business requirements, before the construction of
each service.
Copyright © Arcitura Education Inc.
22
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Figure 3 – This is an example of using multiple assertions: the user executes the service A
using his assertion; however, this service authenticates using digital certificate and executes
service B, including both assertions; then service B needs to execute another service outside
the network, authenticated with a service credential; although not needed for the service B, the
user assertion needs to be sent, for identifying the requestor
A critical point in the use of assertions belongs to its validity: an assertion is actually an XML that represents
an access ticket. This XML can be transmitted, stored, or treated in any way, and if not changed remains valid
within its period of validity. As we have no control over all locations where this assertion can pass, one of the
possible attacks is the “credential hijacking”, i.e. by capturing an assertion a hacker can submit requests using
it as the authenticating user. To prevent this type of attack, the assertions should always be sent encrypted,
and have a short validity (typically between five and fifteen minutes). With that, even if one is caught, can only
be used during this period. This short expiration time however creates a technical problem: user authentication
in a Web server is attached to the browser session, and the expiration of the session is calculated relative to
the last operation requested. However, the expiration of the assertion is absolute, calculated by the date of
issue. Then we can have a valid session with an expired assertion. As the applications should never store the
user’s password (even in memory), in this case the application should perform the logoff and forward the user
to the login screen again, forcing a new authentication and receiving a new assertion. Some IDM systems
allows the applications to extend the validity of an assertion, without presenting the credentials again. This
must be used carefully, because if an attacker gets an assertion, he can keep renewing many times, bypassing
the validity control.
Copyright © Arcitura Education Inc.
23
www.servicetechmag.com
Issue LXXXVI • September/October 2014
When we use a service credential the task is a little easier, because in this case the application has the user’s
password or certificate, then just request a new assertion using the credentials. If an assertion is received in a
server and its validity expires during processing, since it is not possible to request new user authentication, an
error must be generated and the operation should be refused.
As we already defined to meet confidentiality, the decision about encrypting the entire message or only parts
is from business, and must be taken case by case, but it is important that the assertions be never transmitted
unencrypted. If the message is not encrypted, so it is recommended that at least the assertion be.
Authorization
Execution of authorization policy is a task usually accomplished by applications, but today this policy is mainly
oriented to the presentation layer, hiding or disabling UI elements the user does not have rights to execute.
However, WS does not have UI, so the challenge is moving this traditional authorization to the code, enforcing
that be authorized even when the execution bypass the presentation layer. Of course that, UI elements must
still be controlled according to user rights, so a duplicate validation must be performed.
One of the great advantages of modern IDM systems is using RBAC (role based access control) paradigm.
This means that access rights should be granted according to the user’s functional roles, regardless of the
permission in each system. Thus, by assigning a role to a user in HR, he automatically would receive all the
permissions that are required on all systems to perform the assigned role, and additional rights requests
would be required only for exceptions, or any temporary tasks. Using this model, the management of profiles
would be much easier than using the traditional model of assigning system roles and groups. However, this
cultural change takes time, and the vast majority of IDM implementations keep the concepts of system roles.
Therefore, every application need to set their roles and assign them to users who requested. These are the
roles that are normally validated in the application servers, typically using ACLs.
When we map this functionality for services, not much changes, because the roles to be validated are
the same, but each routine of an application that is provided as a service, necessarily must perform the
authorization before its execution. The validation can be made through the same ACLs used for UI, but it
is important that the roles required for the execution of a service must also be defined in the requirements
specification of the service, so that they can be created and included in the validation.
When generating a SAML assertion for authentication, the IDP (identity provider) may include any necessary
user attribute as additional parameters. With this functionality, would be possible to include all the roles a user
have assigned, facilitating the authorization process. The problem is that as our roles are still dependent on
the applications, and using SSO (single sign-on), we don’t know what applications the user will access, you
need to include all roles in assertions, which would increase the size of the message, reducing performance.
Therefore, it is reasonable that there is some mechanism that allows the PEP (policy enforcement point) to
check which roles the user is assigned to, for validating against ACL.
In addition to checking the user roles against the ACL, there are several other business authorizations,
normally mixed to the code of regular operations. It is common to check for approval limits, areas of actuation,
discount limits, and many others situations where the authorization belongs to business rules. Chaining
service calls is a critical case of authorization policy, because the authorization should be validated before any
service is executed. If a service for which a user has rights is executed, performs a part of the transaction,
and executes a chained service, and the user does not have rights to execute this second service, may be
necessary to roll back the first operation to maintain data consistency. Therefore, the permissions that are
required to execute a service must also include permissions to perform all the cascading services. For this
reason, separating the authorization code from operation code is a good practice, which can facilitate this task
and avoid inconsistencies.
Copyright © Arcitura Education Inc.
24
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Privacy
The implementation of privacy criteria depends almost entirely on the definition of business, because only by
knowing the information we know its privacy level, and under which conditions may be used.
The normal tools to ensure privacy are encryption and RBAC access restrictions, but we must also be careful
especially in recording audit trails and logs and also in data storage in databases and other types of files, so
they are made according to the privacy level required for each piece of information.
Availability
Service availability does not generate many constraints for their development, but it is important that operations
with some critical requirement in this sense be monitored to ensure they meet the requirements. This is only
possible if this requirement has been identified before the construction of the service.
Audit
Using services affects directly the audit routines, primarily for its distributed nature. For the generation of audit
trails to be effective you need to consider all the existing systems and monitor all services and servers to
identify when an operation started in one application, but also performed tasks in other applications inside the
same business transaction.
The easiest way to do this is to create transaction identifiers, normally associated with the assertionID
attribute, which is part of the assertion and is created at the time of authentication. In legacy systems, the
record of transactions is done through user’s login, which may cause confusion if the user is authenticated in
more than one station. The assertionID, however, identifies each particular authentication. If the user opens
two different browsers, logs to the same system, and executes the same operation in both, each operation
is going to have different assertionIDs. The challenge is that generating this kind of audit trail is not usual for
developers, who normally considers that regular logs are enough for auditing. There are many systems on the
market specialized in capturing and generating audit events, through the receipt of messages from applications
containing audit data. To receive these messages, these systems utilize transaction ids to define correlations
between data and identify each business operation. Of course, that this can also be done using log files, but
would be very much more easy and effective if you develop your system already including these information.
Once more, identifying the boundaries for the transactions and which operations must be done by business
specialists, and defined in business requirements.
Technical Recommendations
So far, we have identified the components of security, and mapped out how they affects the construction and
use of Web Services, and how they should be implemented in the corporate infrastructure seamlessly to IDM.
Now let us get down to some safety recommendations, indicating some best practices.
The security of services is a new discipline, and several gaps still exist that need to be filled to establish
standards that can be considered relatively safe. In addition, until all these practices are assimilated by the
systems architecture and internal development teams will take some time, so until there, some trade-offs can
be made which may help in your implementation:
■■ Before there is a culture of using the WS-Security standard, it can be assumed that any WS built that
requires authentication should use SSL at the transport layer. Thus, we avoid the complexity of partial
encryption of messages for clients, unless there are specific requirements (i.e. performance).
Copyright © Arcitura Education Inc.
25
www.servicetechmag.com
Issue LXXXVI • September/October 2014
■■ Any WS that can be called from outside the corporate network necessarily needs to be authenticated, and
then, in accordance with the previous recommendation, use SSL.
■■ Special care must be taken with the security standards used in the market, because some are old and have
known vulnerabilities, so the minimum configuration should consider AES or 3DES encryption, SHA256
signatures and certificates with minimum 2048-bit keys.
■■ Digital certificates for use as service credential should be generated related to the server where it will
be used, have not too long validities (one or two years), and the revocation list must be made available
regularly.
■■ Upon implementation of services security, the certificate infrastructure must be strengthened, because it
will be essential for the operation of internal applications. Therefore, it is important to design a more robust
structure of PKI, including the possibility of adding an HSM (hardware security module) to architecture, to
handle the creation and safe storage of these certificates.
■■ To record application logs, the best existing technology today is the Log4J, or their variations: Log4NET
and Log4PHP, which can be used for Java, C# or PHP, respectively. However, they serve mainly for the
application log. For the audit trail must be negotiated with the audit team the best technology to be used.
A simple solution would be to use the Log4J configured with Syslog loggers, but however by establishing a
structured message pattern completely different from normal texts written in application logs.
■■ One of the main points of weakness in applications today, much used by hackers in attacks like “crosssite scripting” or “SQL injection” is the validation of data entry. As Web Services also serve as input for
the systems, the same way as in the pages of the Web, applications should constrain and validate the
data received before processing them. How to control and validate data entry is just out of scope of this
document, but it is important to establish that makes no sense to implement security if the services remains
open to such attacks.
Conclusion
The purpose of this document was not to establish standards for implementing security of services, but rather
provide teams of systems architecture and development with technical allowances for these security standards
be established. After this step, standards, patterns, norms and artifacts should be built for each case, aligned
with your security policy, which should be disseminated to software factories and development teams, and be
verified when the application is released, to ensure their adherence to the standards.
In addition to the definition of standards, it is important that architectural components be constructed, for
making all these tasks as easy and transparent as possible to developers. If possible, these components
should be installed on application servers, in order to enhance their use and adherence to standards.
The main message of this document is that makes any sense to use the most sophisticated firewalls and
network controls, if your system maintains services that run without any security. Is the same as locking the
front door, but leaving the back door open. The most vulnerable point will always initiate an attack, and that
point will be the security level of your company. Today, the lack of knowledge and safety standards in the
development of systems is one of the leading and most critical security failures of companies.
Building services is not an easy or cheap activity. A service is a piece of code that is executed by a request that
comes from another computer, and has no display or user to validate their execution. In fact, it runs silently,
and how implementation is not cheap, is used to run critical business operations. Therefore, unlike the existing
common sense today, the safety recommendations should be specially strengthened for the services, because
Copyright © Arcitura Education Inc.
26
www.servicetechmag.com
Issue LXXXVI • September/October 2014
any irregular operation will only be identified by its result, usually a long time after, hindering the identification
of the author, and therefore its subsequent correction.
For all these considerations, it is very important the definition of strict standards and best practices, and the
involvement of the company’s business areas to ensure that requirements are identified and met. In virtually all
components of security, business information are necessary for its effective application, then real security is not
made with technical features like encryption or fingerprint readers, but is a set of actions and information that
must be used in combination to achieve the goals.
As it is common to hear in the area of security that “If simply closing doors would mean security, games at
major stadiums should have no audience”. Security is exactly maintaining only the required ports open, but
having absolute control of who is coming in, what he can do and what he had done. This control can only be
achieved with correct and up-to-date information, and when the standards are established and followed by all.
Bibliography and References
■■ O’Neill, Mark (1/31/2003). Web Services Security (Application Development). McGraw-Hill.
■■ Stuttard, Dafydd; Pinto, Marcus (8/31/2011). The Web Application Hacker’s Handbook: Finding and
Exploiting Security Flaws. Wiley.
■■ Jothy Rosenberg; Remy, David (5/22/2004). Securing Web Services with WS-Security: Demystifying WSSecurity, WS-Policy, SAML, XML Signature, and XML Encryption. Sams Publishing.
■■ Harding, Christopher; Mizumori, Roger; Williams, Ronald. Architectures for Identity Management. The Open
Group.
■■ Skip Slone & The Open Group Identity Management Work Area. Identity Management. The Open Group.
■■ OASIS Web Services Security (WSS) TC. WS-Security Core Specification 1.1. Oasis.
■■ OASIS Web Services Security (WSS) TC. Username Token Profile 1.1. Oasis.
■■ OASIS Web Services Security (WSS) TC. SAML Token profile 1.1. Oasis.
■■ OASIS Reference Architecture Foundation for Service Oriented Architecture Version 1.0, Committee
Specification 01, December 4, 2012
■■ Navigating the SOA Open Standards Landscape Around Architecture, a Joint Paper by The Open Group,
OASIS, and OMG, July 2009
■■ OASIS Reference Model for Service Oriented Architecture 1.0, Official OASIS Standard, October 12, 2006
Copyright © Arcitura Education Inc.
27
www.servicetechmag.com
The Cloud Storage Specialist
Certification is Arriving!
CCP Module 13 Fundamental Cloud Storage
This course expands upon the cloud storage topics introduced by Module 2 by further exploring cloud storage devices, structures, and
technologies from a more technical and implementation-specific perspective. A set of cloud storage mechanisms and devices are
established, along with in-depth coverage of NoSQL and cloud storage services.
See more at www.cloudschool.com/courses/module7
CCP Module 14 Advanced Cloud Storage
A number of advanced topics are introduced in this course, including persistent storage, redundant storage, cloud-attached storage,
cloud-remote storage, cloud storage gateways, cloud storage brokers, Direct Attached Storage (DAS), Network Attached Storage
(NAS), Storage Area Network (SAN), various cloud storage-related design patterns, and the overall information lifecycle management,
as it applies specifically to cloud-hosted data.
See more at www.cloudschool.com/courses/module8
CCP Module 15 Cloud Storage Lab
A hands-on lab during which participants apply the patterns, concepts, practices, devices, and mechanisms covered in previous
courses, in order to complete a series of exercises that pertain to solving cloud storage problems and creating cloud
storage architectures.
See more at www.cloudschool.com/courses/module9
Issue LXXXVI • September/October 2014
Security and Identity Management Applied to SOA - Part II
by Thomas Erl, Arcitura Education Inc., Clive Gee, Executive Consultant, IBM Software SOA Advanced
Technology Group, Jürgen Kress, Oracle, Speaker, Author, Berthold Maier, Enterprise Architect,
T-Systems International department of Telekom Germany, Hajo Normann, Oracle ACE Director,
Pethuru Raj, SOA Specialist, Wipro Technologies, Leo Shuster, SOA Architect, National Bank, Bernd
Trops, Senior Principal Consultant, Talend Inc., Clemens Utschig-Utschig, Chief Architect, Shared
Service Centre, Global Business Services, Boehringer Ingelheim, Philip Wik, Redflex, DBA, Torsten
Winterberg, Business Developement and Innovation, Opitz Consulting
The following is an excerpt from the new book “Next Generation SOA: A Concise Introduction to Service
Technology & Service-Orientation”. For more information about this book, visit
www.servicetechbooks.com/nextgen.
The convergences of modern SOA practices with service technologies have been creating opportunities
to form new business relationships and operational models. Intended to inspire the construction of custom
models for organizations in any industry, a series of innovative models that highlight the potential of next
generation SOA is explored in this chapter.
The Enterprise Service Model
The enterprise service model combines capability, business processes, organization models, and data
models into a single unified view of the business and its development priorities. All of the industry models
described in the upcoming sections rely on the participation of one or more service-enabled organizations and,
correspondingly, the existence of one or more enterprise service models.
As a conceptual simulation of how an enterprise operates, this type of model can be applied to any
organization. Developing such a model for an enterprise is valuable because any of the services contained
therein can be delivered directly by IT assets using automated business processes or delivered as
transactional units of business logic.
A unified model defines a physical inventory of services for implementation as IT assets and provides a
common language that can be used by both business and IT professionals to better understand the other’s
priorities, needs, and expectations. This alignment of IT and business encourages the development of
IT solutions that can map accurately to and better support business processes, which in turn enhances
business efficiency in the ability to capitalize on new opportunities and respond to new challenges. While next
generation service-oriented enterprises already tend to use some service technologies to optimize business
operations and achieve strategic business goals, new business opportunities can uniquely drive IT to embrace
other, more diverse service technologies in an effort to leverage best-of-breed offerings.
Enterprises can have a large inventory of shared and deployed business services ranging from basic business
transactions to automated, complex, or long-running business processes. With a well-defined enterprise
service model of primary business activities, enterprises can prioritize solutions and leverage business models
that provide the foundation for reusable services. Solutions might include discovering new potential business
partners, comparing vendor deals, and on-boarding new vendors. A well-defined service model offers a service
consumer-service provider approach to conducting business between operating units within the enterprise and
between the enterprise and its business partners.
Copyright © Arcitura Education Inc.
29
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Next generation SOA allows for the creation of a complete ecosystem that connects and supports both
business and IT, providing full integration of business objectives, operations and processes, standards, rules,
governance, and IT infrastructure and assets. Enterprises can base their information models on industry
standards to facilitate the interoperability of custom services with business partners and other third parties.
The first step in developing an enterprise service model is to define high-level services that are then
decomposed into progressively finer-grained services representing business activities, processes, and tasks.
The service inventory contains all of the services from the service model that have been physically realized as
IT assets. These services can be purchased commercially, developed internally, or provided by third parties.
The service approach readily identifies repeated tasks that are common to multiple different business units and
business processes. Reusable services that perform these repeated tasks should undergo automation only
once to avoid unnecessary duplication and simplify the overall complexity of the IT domain. Some utility-centric
services, such as those that provide security, monitoring, and reporting-related processing, are highly reusable
across all business domains. Since the physical services in the inventory mirror business processes, activities,
and tasks, monitoring their execution can provide a realtime picture of how the enterprise is performing relative
to its business targets, which is generally unachievable with commercial application packages.
The Virtual Enterprise Model
In the virtual enterprise model, companies join together in a loose federation to compete with major players in
the same industry. The virtualization of a collective enterprise enables the member enterprises to collaborate
on a specific business opportunity, and affords them the freedom of rapidly disbanding with relatively little
impact on the individual enterprise. A virtual enterprise is a dynamic consortium of small and medium
enterprises (SMEs) that have agreed to combine efforts to create a joint product or to bid for a major contract.
Large corporations may also form consortia for large-scale projects. By leveraging cloud computing advances,
virtual enterprises can become indistinguishable from physical enterprises as far as externally-facing
customers and users are concerned, since they typically have minimal physical presence and often little to no
in-house infrastructure.
Members of the consortium may compete with each other outside the agreed scope of the virtual enterprise’s
area of operations. This model allows small businesses to compete for major contracts or create products of
higher complexity. Each consortium member contributes their existing skills and capabilities, and benefits from
the ability to collectively achieve a result that none could accomplish individually. Opportunities, profits, and
risks are shared across the consortium.
In this highly flexible model, virtual enterprises can form, expand, contract, and dissolve rapidly and
inexpensively to meet market opportunities after establishing collective trust. Effective governance is required
to coordinate the efforts of individual consortium members, and SOA technology can enable the integration
of supply chains across the entire virtual enterprise. Service contracts and interfaces provide for clear
communication between consortium members, while facilitating the addition and withdrawal of members to and
from the virtual enterprise without requiring major changes to their infrastructure.
Many cross-enterprise business processes can be automated. The monitoring and reporting of automated
processes and transactional service executions provides consortium members with accurate, realtime data on
the state and operations of the virtual enterprise. This business model is mainly relevant for the manufacturing,
distribution, retail, and service industries, as well as business opportunities provided by one-time events like
the Super Bowl or Olympic Games.
A simple but promising variant of this approach would be an entrepreneurial organization whose business
model is to act as a virtual holding company. A virtual holding company creates and manages virtual
Copyright © Arcitura Education Inc.
30
www.servicetechmag.com
Issue LXXXVI • September/October 2014
enterprises without being an active participant in the manufacturing of products or service offerings.
The Capacity Trader Model
In the capacity trader model, IT capacity is sold to customers as a commodity in a cloud computing
environment. Parties with spare IT capacity sell to clients who require extra capacity. IT capacity traders buy
and sell IT capacity to commercial users. Typically, these users operate in a different time zone and will use the
purchased capacity outside of the capacity trader’s normal working hours. Capacity may also become available
as the result of an oversized data center, a reduction in processing demand caused by business losses, or an
overt business strategy.
Some organizations use the capacity trader model as a foundational business model to create IT capacity for
sale to commercial users, while others offer capacity brokerage services and sign up multiple small capacity
traders to create a high-capacity bundle that can be marketed at a premium. The capacity trader model is
the 21st-century equivalent of the data center of the 1970s. Amazon.com, Inc. was the first company to sell
its extra computing capacity, and many large computer companies have adopted this model to follow in its
footsteps.
The Enhanced Wholesaler Model
According to the enhanced wholesaler model, the high speeds at which service-oriented automation enables
wholesalers to receive contract bids from suppliers allow the wholesalers to respond more dynamically to
demand, reduce, or even eliminate storage costs, and maximize profits. Traditional wholesalers buy products
from multiple suppliers to sell to individual customers. The enhanced wholesaler model relies on one-stop
shopping to meet customer needs for a range of products and reduce unit costs by purchasing large quantities
from individual suppliers.
This model is in sharp contrast to the base wholesaler business model, where the wholesaler purchases goods
or services from suppliers to sells them to customers at a profit. The enhanced wholesaler can secure the
best deals from many potential bidders, and, if necessary, combine their offerings to meet each customer’s
requirements. It can further charge a commission for locating and introducing customers to suppliers.
Service technology improves on the enhanced wholesaler model by enabling the wholesaler to expand
its network of suppliers and customers. The creation, enforcing, and monitoring of formal contracts helps
the wholesaler maintain multiple business relationships, while the global nature of the Web has increased
opportunities to trade over great distances. Warehousing costs may be eliminated in some cases by using drop
shipping, where the manufacturer delivers the goods directly to the end user.
The Price Comparator Model
The price comparator model is where a commercial organization compares the bids of multiple competing
suppliers to find the best possible deal for a potential customer. Price comparators perform the service of
requesting and managing quotes from multiple competing companies for common commodities, such as
insurance, hotel accommodation, or rental cars. Profits are based on commission per sale and a commission
fee is typically charged to the successful vendor.
In many cases, price comparators give potential customers access to multiple quotes for common goods or
services through a dedicated Web site. The visitor first enters their details to contact multiple potential vendors
for different quotes before selecting a preferred option based on a combination of features and price and
making the purchase. In such instances, the price comparison site takes a commission on the purchase.
Copyright © Arcitura Education Inc.
31
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Unlike enhanced wholesalers, price comparators never own the products they market, but simply act as
intermediaries between the buyer and seller. Setup costs are low, but a substantial investment is required for
advertising if the site targets private customers, as there is massive competition in some industries. Service
technology enables price comparison sites to contact many potential providers in parallel and then rank and
display their offerings in realtime. Financial details of the purchase transaction can be exchanged securely and
promptly. This model adapts to any industry that markets goods and services to the general public.
The Content Provider Model
Content providers create information feeds containing textual, pictorial, and multimedia data for service
consumers to access. Increasing availability of high-bandwidth communications has resulted in significant
growth in the amount of electronically transmitted information, including items like sports feeds and movies.
A content provider supplies information feeds to information aggregator organizations, such as telephone
companies, the press, and commercial Web sites, that make such content available to customers for a direct
fee or through funding from advertisers. The owner of an electronic asset can make that content available to a
wide number of information integrators.
Piracy can be an issue, especially in the software and entertainment industries. Services provide a
secure channel between the content provider and the content aggregator, while service monitoring can be
implemented to automate the billing process and provide an audit trail. Multimedia, software, and e-books
currently dominate the content provider model. Some content providers deal directly with retail customers
rather than through content aggregators.
The Job Market Model
In the job market model, enterprises locate and hire contractors that possess the skills suitable for specific
tasks. In recent years, the job market has become more dynamic and fluid. It was once common for new
graduates to have a single career specialization and to even be employed by the same company their entire
working life, while graduates nowadays are generally expected to have multiple specializations, employers,
and careers. Increasingly more professionals are working as short-term contractors rather than as long-term
employees. The job market model is a specialized form of the employment agency that maintains a database
of contractors with different skill sets and qualifications to meet the specific needs of employers.
The principal differences between the job market model’s contractor job center and an employment agency is
that the positions filled are short-term rather than permanent, and that the contractors may be any combination
of individuals and subcontracting companies. Using a contractor job center allows both the employer and the
contractor to be part of a global marketplace without having to invest in infrastructure enterprises, which can
reduce per-capita employment overheads and physical infrastructure costs. Business flexibility and agility
can also be increased through the use of subcontractors rather than full-time employees. The number of
contractors can be rapidly scaled up or down to dynamically meet business demands.
The increasing availability of high-bandwidth connectivity will enable many employees to work from rural
or suburban locations, requiring a change in culture for many traditional businesses which will now need to
employ individuals that they may never physically meet. Services provide a secure and precise means of
communication between all parties. Service contracts provide information about the timing of requests and
responses, and service interfaces allow software developers to remotely test and integrate systems code.
Service technology can automate the bidding process for each opportunity. The SOA infrastructure can use the
agency to notify individuals of all of the opportunities for which they are qualified via a variety of channels, such
Copyright © Arcitura Education Inc.
32
www.servicetechmag.com
Issue LXXXVI • September/October 2014
as e-mail or instant messaging.
Most administrative processes can be automated to reduce setup and operating costs for the agency. While
particularly appropriate for IT consultants, this model is likely the future of work for many professionals and
administrative staff in many industries, who will either work from home or for small businesses. Contractor
agents can be considered to be subcontractors in their own right. In addition to providing prospective
employers with a list of candidates, they also employ the contractors themselves and are responsible for their
performance. An alternative approach is to create a consultant market in which individuals or organizations bid
against each other for specific contract opportunities. In this model, the contractor agency manages the bidding
and vetoes or rates the bidder.
The Global Trader Model
The global trader model allows for an international marketing reach. While the Internet has certainly been
successful at increasing the globalization of trade, some inhibitors still remain. The key issues involve trust,
differences in commercial law and enforcement of those laws, and non-existent international standards.
Issues of trust exist whenever two organizations do business with one another. While Web standards help to
provide secure communications, proof of identity, and an audit trail, they do not provide the ability to guarantee
that each organization will fulfill contractual promises or that the quality of goods delivered or services
performed will be satisfactory. This is especially problematic when the two organizations operate in different
countries.
Differences in commercial laws and law enforcement are a problem for both enterprises and governments.
Generally, enterprises cannot be confident that a foreign supplier’s government will take appropriate action
if that supplier breaches a business contract. Government bodies, especially those involved in customs and
taxation, want to be sure that they are kept well-informed of all transfers of goods and chargeable services into
and from their countries, which can be difficult to achieve if the transfers are
performed electronically.
Few industries have standards that are truly international, and many countries handle business accounting
and taxation quite differently. Addresses, for example, can take many different forms around the globe, while
certain countries do not use a social security number or other unique identifier for each citizen. Two types
of organizations known as industry watchdogs and guarantors have been established to address various
inhibitors to global trade.
Industry Watchdogs
An industry watchdog is a trusted third party that has the authority to certify companies that have met a
recognized set of performance standards. This helps to promote free trade by reducing the risk of dealing with
unknown suppliers. On the other hand, certification is not a guarantee of quality, and certified companies that
commit a breach of trust may lose their status. In some countries, the capacity of watchdogs is limited to the
regulation of companies within borders, while most regulators in the United States can only operate within an
individual state.
Guarantors
Guarantors use the insurance model to provide more active protection of individual business transactions,
ensuring that each of the parties involved in a specific single contract fulfills its obligations. A guarantor acts
as an intermediary for commercial business transactions and reimburses the customer in the event that the
Copyright © Arcitura Education Inc.
33
www.servicetechmag.com
Issue LXXXVI • September/October 2014
supplier fails to meet contractual obligations. A common method of reimbursement is for the guarantor to act as
an escrow account, taking payment from the customer but not paying the supplier until the goods or services
have been provided.
The guarantor can profit from this approach by earning interest on the fees held in escrow. However,
reimbursing customers for high-value business transactions gone awry without a relatively high volume
of business can present a risk, and excessive reimbursement can damage the guarantor’s profitability. A
relationship of trust with both clients and suppliers first needs to be established in order for the escrow model
to succeed. A standalone retail transaction insurer could also use this business model.
Copyright © Arcitura Education Inc.
34
www.servicetechmag.com
The Big Data Scientist
Certification is Arriving!
Pre-Order Pricing Will End Soon
Order Now!
www.bigdatascienceschool.com/certifications/scientist
Issue LXXXVI • September/October 2014
Contributors
Jose Luiz Berg
Jose Luiz Berg is a long term project manager and a systems architect with Enterprise
Application Integration (EAI). In the past few years, Jose focused his work on implementing
Service Oriented Architecture (SOA) for large Brazilian telecommunication companies. He
graduated in computer networks, but also has a lot of experience working as a programmer
in commercial programming languages, in last 25 years. Jose believes that SOA is one of the
most important advances in software development in last decades. As it involves not only a
change in the way we work, but also a significantly changes how companies see themselves
and their IT resources. This advancement may be a risk, as many companies are being
convinced by bad software vendors that SOA is only creating Web services, however they
are not focusing on what it really stands for. By doing so they are not realizing that this is
important part of the history in the making.
Contributions
■■ Security and Identity Management Applied to SOA - Part II
■■ Security and Identity Management Applied to SOA - Part I
■■ The Integration Between EAI and SOA - Part II
■■ The Integration Between EAI and SOA - Part I
Pethuru Cheliah
Dr. Pethuru Raj has been working as a TOGAF-certified enterprise architecture (EA)
consultant in Wipro Technologies, Bangalore. On the educational front, armed with the
competitive UGC research fellowship, he could proceed with his research activities and
was awarded the prestigious PhD degree by Anna University, Chennai, India. He then
could acquire the meritorious CSIR fellowship to work as a postdoctoral researcher in the
Department of Computer Science and Automation (CSA), Indian Institute of Science (IISc),
Bangalore. Thereafter, he was granted a couple of international research fellowships (JSPS
and JST) to work as a research scientist for 3 years in two leading Japanese universities. Dr.
Raj also had a fruitful stint as a lead architect in the corporate research (CR) division of Robert
Bosch, India, for 1.5 years.
Dr. Raj has more than 12 years of IT industry experience. Primarily, he has been a technical
architect and currently he is providing technology advisory services for worldwide business
behemoths on the transformation capabilities of enterprise architecture (EA) in synchronization
with some of the emerging technologies such as the Internet of Things (IoT) / Cyber Physical
Systems (CPS) / Machine-to-Machine (M2M) Integration, Big Data, Cloud and Service
Copyright © Arcitura Education Inc.
36
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Computing paradigms, Real-time Analytics of Big data using Cloud-based NoSQL databases,
Hadoop framework, etc. and Mobility. He has made use of the opportunities that came on his
way to focus on a few business domains, including telecommunication, retail, government,
energy, and health care.
Dr. Raj has contributed book chapters for a number of technology books that were edited by
internationally acclaimed professors and published by leading publishing houses. Currently he
is writing a comprehensive book with the title “The Internet of Things (IoT) Technologies for
the Envisioned Smarter Planet” for a world-leading book house. The CRC Press, USA has just
released his book on “Cloud Enterprise Architecture” and you can find the book details in the
page http://www.peterindia.net/peterbook.html
Contributions
■■ A Look at Service-Driven Industry Models
■■ Envisioning Converged Service Delivery Platforms (SDP 2.0) - Part II
■■ Envisioning Converged Service Delivery Platforms (SDP 2.0) - Part I
■■ Envisioning Insights - Driven Connected Vehicles
■■ Envisioning Cloud-Inspired Smarter Homes
■■ A Perspective of Green IT Technologies
Thomas Erl
Thomas Erl is a best-selling IT author and founder of CloudSchool.com™ and SOASchool.
com®. Thomas has been the world’s top-selling service technology author for over five years
and is the series editor of the Prentice Hall Service Technology Series from Thomas Erl (www.
servicetechbooks.com ), as well as the editor of the Service Technology Magazine (www.
servicetechmag.com). With over 175,000 copies in print world-wide, his eight published books
have become international bestsellers and have been formally endorsed by senior members
of major IT organizations, such as IBM, Microsoft, Oracle, Intel, Accenture, IEEE, HL7,
MITRE, SAP, CISCO, HP, and others.
Four of his books, Cloud Computing: Concepts, Technology & Architecture, SOA Design
Patterns, SOA Principles of Service Design, and SOA Governance, were authored in
collaboration with the IT community and have contributed to the definition of cloud computing
technology mechanisms, the service-oriented architectural model and service-orientation as
a distinct paradigm. Thomas is currently working with over 20 authors on several new books
dedicated to specialized topic areas such as cloud computing, Big Data, modern service
technologies, and service-orientation.
As CEO of Arcitura Education Inc. and in cooperation with CloudSchool.com™ and
SOASchool.com®, Thomas has led the development of curricula for the internationally
recognized SOA Certified Professional (SOACP) and Cloud Certified Professional (CCP)
accreditation programs, which have established a series of formal, vendor-neutral industry
certifications.
Copyright © Arcitura Education Inc.
37
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Thomas is the founding member of the SOA Manifesto Working Group and author of
the Annotated SOA Manifesto (www.soa-manifesto.com). He is a member of the Cloud
Education & Credential Committee, SOA Education Committee, and he further oversees
the SOAPatterns.org and CloudPatterns.org initiatives, which are dedicated to the on-going
development of master pattern catalogs for service-oriented computing and cloud computing.
Thomas has toured over 20 countries as a speaker and instructor for public and private
events, and regularly participates in international conferences, including SOA, Cloud + Service
Technology Symposium and Gartner events. Over 100 articles and interviews by Thomas
have been published in numerous publications, including the Wall Street Journal and CIO
Magazine.
Clive Gee
Clive Gee, Ph.D., one of IBM’s most experienced SOA governance practitioners, recently
retired from his post as an Executive Consultant in the SOA Advanced Technologies group.
He has worked in IT for more than 30 years, during the last few of which he led many SOA
implementation and governance engagements for major clients all around the world, helping
them to cope with the complexities of successfully transitioning to SOA. He now lives in
Shetland, United Kingdom, but travels widely and does freelance consulting, especially in the
area of
SOA governance.
Contributions
■■ A Look at Service-Driven Industry Models
■■ SOA and Information Risk Management
■■ Service Development Lifecycle Controls for Creating a Service Factory
Jürgen Kress
As a middleware expert Jürgen works at Oracle EMEA Alliances and Channels, responsible
for Oracle’s EMEA fusion middleware partner business. He is the founder of the Oracle SOA
& BPM and the WebLogic Partner Communities and the global Oracle Partner Advisory
Councils. With more than 5000 members from all over the world the Middleware Partner
Community are the most successful and active communities at Oracle. Jürgen manages the
community with monthly newsletters, webcasts and conferences. He hosts his annual Fusion
Middleware Partner Community Forums and the Fusion Middleware Summer Camps, where
more than 200 partners get product updates, roadmap insights and hands-on trainings.
Supplemented by many web 2.0 tools like twitter, discussion forums, online communities,
blogs and wikis. For the SOA & Cloud Symposium by Thomas Erl, Jürgen is a member of the
steering board. He is also a frequent speaker at conferences like the SOA & BPM Integration
Days, JAX, UKOUG, OUGN, or OOP.
Copyright © Arcitura Education Inc.
38
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Contributions
■■ A Look at Service-Driven Industry Models
■■ Cloud Computing and SOA
■■ SOA and Business Processes: You are the Process!
■■ MDM and SOA: Be Warned!
■■ Event-Driven SOA
■■ SOA in Real Life: Mobile Solutions
■■ Understanding Service Compensation
■■ Securing the SOA Landscape
■■ Enterprise Service Bus
■■ SOA Maturity Alongside Contract Standardization
■■ Canonizing a Language for Architecture: An SOA Service Category Matrix
■■ Industrial SOA
■■ SOA Blueprint: A Toolbox for Architects
Mark Little
Dr. Mark Little is VP Engineering at Red Hat where he leads JBoss technical direction,
research, and development. Prior to this he was the SOA Technical Development Manager
and the Director of Standards. He was also the Chief Architect and Co-Founder at Arjuna
Technologies, as well as a Distinguished Engineer at Hewlett Packard. He has worked
in the area of reliable distributed systems since the mid-eighties. His Ph.D.f was on faulttolerant distributed systems, replication, and transactions. He is currently also a professor at
Newcastle University.
Contributions
■■ API Governance and Management
Copyright © Arcitura Education Inc.
39
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Hajo Normann
Hajo Normann works for Accenture in the role of SOA & BPM Community of Practice Lead in
ASG. Hajo is responsible for the architecture and solution design of SOA/BPM projects, mostly
acting as the interface between business and the IT sides. He enjoys tackling organizational
and technical challenges and motivates solutions in customer workshops, conferences, and
publications. Hajo leads together with Torsten Winterberg the DOAG SIG Middleware and is
an Oracle ACE Director and an active member of a global network within Accenture, as well
as in regular contact with SOA/BPM architects from around the world.
Contributions
■■ A Look at Service-Driven Industry Models
■■ Cloud Computing and SOA
■■ SOA and Business Processes: You are the Process!
■■ MDM and SOA: Be Warned!
■■ Event-Driven SOA
■■ SOA in Real Life: Mobile Solutions
■■ Understanding Service Compensation
■■ Securing the SOA Landscape
■■ Enterprise Service Bus
■■ SOA Maturity Alongside Contract Standardization
■■ Canonizing a Language for Architecture: An SOA Service Category Matrix
■■ Industrial SOA
■■ SOA Blueprint: A Toolbox for Architects
Leo Shuster
Leo Shuster is responsible for SOA strategy and execution at National City Bank.
He has over 15 years of IT experience and throughout his career, has performed a variety of
roles including group manager, team lead, project manager, architect, and developer.
His experience spans a number of industries but over the past 7 years, he has been focused
on the financial services sector.
Mr. Shuster holds a Masters degree in Computer Science and Engineering from Case
Western Reserve University and an MBA from Cleveland State University.
He has presented on SOA and related topics for groups of all sizes at such events as the
Gartner summits and the Enterprise Architecture Executive Council.
Copyright © Arcitura Education Inc.
40
www.servicetechmag.com
Issue LXXXVI • September/October 2014
He regularly blogs about advanced software architecture issues at leoshuster.blogspot.com
and he can be reached at [email protected]
Contributions
■■ A Look at Service-Driven Industry Models
■■ Driving SOA Governance - Part III: Organizational Aspects
■■ Driving SOA Governance - Part II: Operational Considerations
■■ Driving SOA Governance - Part I
■■ Project-Oriented SOA
Longji Tang
Longji Tang is a Senior Technical Advisor in FedEx IT and Professor of the School of
Information Science and Engineering in Hunan University. His research focuses on software
architecture and design, service-oriented architecture, service computing, cloud computing,
mobile computing, big data computing, and system modeling as well as formalism. He began
graduate studies at Penn State University in 1992 and graduated in 1995 with a Master of
Engineering degree in Computer Science & Engineering and a Master of Art degree in Applied
Mathematics. Longji started his part-time PhD studies in 2005 and obtained his PhD degree
in Software Engineering in 2011. He published more than 35 research papers from data
science, numeric analysis, and inverse problems to SOA, cloud, and mobile computing. He is
one of members of Program Committee in 2013/2014/2015 IEEE Mobile Cloud International
Conference.
Contributions
■■ API Governance and Management
■■ Enterprise Mobile Services Architecture: Challenges and Approaches
■■ SLA-Aware Enterprise Service Computing - Part II
■■ SLA-Aware Enterprise Service Computing - Part I
■■ Modeling and Analyzing Enterprise Cloud Service Architecture - Part II
■■ Modeling and Analyzing Enterprise Cloud Service Architecture - Part I
Copyright © Arcitura Education Inc.
41
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Bernd Trops
Bernd Trops is a Senior Principal Consultant at Talend Inc. In this role he is responsible for
client project management and training.
Bernd is responsible for all Talend projects within the Deutsche Post and the introductions of
new versions and components.
Before Talend, Bernd was a Systems Engineer working on various projects for GemStone,
Brocade and WebGain and therefore has extensive experience in J2EE and SOA. From 2003
to 2007 Bernd Trops worked as a SOA Architect at Oracle.
Contributions
■■ A Look at Service-Driven Industry Models
■■ Cloud Computing and SOA
■■ SOA and Business Processes: You are the Process!
■■ MDM and SOA: Be Warned!
■■ Event-Driven SOA
■■ SOA in Real Life: Mobile Solutions
■■ Understanding Service Compensation
■■ Securing the SOA Landscape
■■ Enterprise Service Bus
■■ SOA Maturity Alongside Contract Standardization
■■ Canonizing a Language for Architecture: An SOA Service Category Matrix
■■ Industrial SOA
Clemens Utschig-Utschig
Clemens worked as Chief Architect for the Shared Service Centre, Global Business Services,
Boehringer Ingelheim in architecture, master data, service management and innovation.
At the moment he works with holistic enterprise architecture that provides the methodological
platform for the new master data management.
He previously worked as a Platform Architect at Oracle Inc. in the United States, where he
helped to develop next product strategy as well as the SOA BPM Suite.
Contributions
■■ A Look at Service-Driven Industry Models
■■ Cloud Computing and SOA
Copyright © Arcitura Education Inc.
42
www.servicetechmag.com
Issue LXXXVI • September/October 2014
■■ SOA and Business Processes: You are the Process!
■■ MDM and SOA: Be Warned!
■■ Event-Driven SOA
■■ SOA in Real Life: Mobile Solutions
■■ Understanding Service Compensation
■■ Securing the SOA Landscape
■■ Enterprise Service Bus
■■ SOA Maturity Alongside Contract Standardization
■■ Canonizing a Language for Architecture: An SOA Service Category Matrix
■■ Industrial SOA
■■ SOA Blueprint: A Toolbox for Architects
Philip Wik
Philip Wik is a Database Administrator for Redflex. Philip has worked for JP Morgan/Chase,
Wells Fargo, American Express, Honeywell, Boeing, Intel, and other companies in a variety
of applications development, integration, and architectural roles. He has published two books
through Prentice-Hall: How to Do Business With the People’s Republic of China and How to
Buy and Manage Income Property.
Contributions
■■ A Look at Service-Driven Industry Models
■■ Big Data as a Service
■■ Patterns and Principles in the Real World - Part II
■■ Patterns and Principles in the Real World - Part I
■■ Architecting Service-Oriented Technologies
■■ Thunder Clouds: Managing SOA-Cloud Risk - Part II
■■ Thunder Clouds: Managing SOA-Cloud Risk - Part I
■■ Service-Oriented Architecture and Business Intelligence
■■ Confronting SOA’s Four Horsemen of the Apocalypse
■■ Machiavelli’s SOA: Toward a Theory of SOA Security
■■ Effective Top-down SOA Management in Efficient Bottom-up Agile World - Part II
■■ Effective Top-down SOA Management in Efficient Bottom-up Agile World - Part I
Copyright © Arcitura Education Inc.
43
www.servicetechmag.com
Issue LXXXVI • September/October 2014
Torsten Winterberg
Torsten Winterberg works for Oracle Platinum Partner OPITZ CONSULTING. As a director of
the competence center for integration and business process solutions he follows his passion
to build the best delivery unit for customer solutions in the area of SOA and BPM. He has
long-time experience as developer, coach and architect in the area of building complex
mission critical Java EE applications. He is a known speaker in the German Java and Oracle
communities and has written numerous articles on SOA/BPM related topics. Torsten is part of
the Oracle ACE director team (ACE=Acknowledged Community Expert) and leads the DOAG
middleware community.
Contributions
■■ A Look at Service-Driven Industry Models
■■ Cloud Computing and SOA
■■ SOA and Business Processes: You are the Process!
■■ MDM and SOA: Be Warned!
■■ Event-Driven SOA
■■ SOA in Real Life: Mobile Solutions
■■ Understanding Service Compensation
■■ Securing the SOA Landscape
■■ Enterprise Service Bus
■■ SOA Maturity Alongside Contract Standardization
■■ Canonizing a Language for Architecture: An SOA Service Category Matrix
■■ Industrial SOA
■■ SOA Blueprint: A Toolbox for Architects
Copyright © Arcitura Education Inc.
44
www.servicetechmag.com
Arcitura IT Certified
Professionals (AITCP)
Community
www.arcitura.com/community
Join the thousands of members of the growing international
Arcitura community. Launched for the first time in mid-2011,
Arcitura Education made official social media communities
available via LinkedIn, Twitter, and Facebook. These new
communities join the already existing memberships of
LinkedIn, Twitter, and Facebook platforms for the Prentice Hall
Service Technology Book Series from Thomas Erl.
The Service Technology Magazine is a monthly online
publication provided by Arcitura Education Inc. and
officially associated with the “Prentice Hall Service
Technology Book Series from Thomas Erl.” The Service
Technology Magazine is dedicated to publishing
specialized articles, case studies, and papers by industry
experts and professionals in the fields of service-oriented
architecture (SOA), cloud computing, Big Data, semantic
Web technologies, and other areas of services-based
technology, innovation, and practice.
www.servicetechnologymagazine.com
www.servicetechmag.com
Copyright © Arcitura Education Inc.