David Orchard at XML.com writes about the pitfalls of Web Services. David argues that most people writing about Web Services don't talk about important aspects such as Security, Contracts, Billing and the potential of a DLL type hell with version mismatch.
Web Services vs Financial Feeds
Web Services are the buzz word of the moment. Of course we have used similar technology for years in Investment Banking, only generally using more robust technologies. So we've already experienced many of the issues David mentions.
In Investment Banking we are already handle many of those kinds of issues. We are used to subscribing to data and providing our own in the shape of feeds: Trade feeds, News Feeds, Payment Feeds, Pricing Feeds etc. These feeds can be external such as Reuters Kondor or internal like a banks internal Swift payment feed.
In most of these cases Contracts and Billing is handled offline as you'd expect. But what about Security and Version mismatches. Version Mismatches are unlikely to happen because of Contractual issues. When a new version is released of a feed, it is generally a big deal in the Investment Banking world. Just look at the current Kondor 2.0 migration happening all over the world right now.
Security and the Information Chain
Security is the big issue here. When we are working with the kinds of sums that we do in the investment banking world it would be disasterous if a service fell victim for a Denial of Service attack or a hacker infiltrated a system somewhere in the information chain and started feeding false information through. Some areas here we are very good in the financial world. For example outgoing payment systems tend to have pretty well thought out security. But what about Informational feeds. It could be equally disastrous if trade or price feeds got tampered with.
So this is what we need to work on. Almost every IT group in investment banking is part of the Information chain. We rely on data from other systems and other systems rely on data from us. This is why every single subsystem and component really needs a security audit. Just think of all those CORBA or RMI orbs that are sitting protected only by a firewall with method names such as "addTrade", "addPayment". It's not just orbs, every bank has a multitude of different message infrastructures such as TIBCO, Swift etc. Are they protected? In most cases poorly. What about Databases? While Oracles highly publicized security bloopers recently highlight that there are still issues in 3rd party software to beware of, many production systems have poorly thought out security frameworks.
If someone manages to break into a trusted link in this information chain, they've essentially broken into the chain as a whole. This makes it our job as Application Developers to think long and hard about the security of not only our applications, but also the infrastructure components we rely on.
7:31:56 AM comment []
|