Developer's Gateway: Passport and XML Web Services
Application development has evolved in recent years and it is about to enter yet another realm of change. Web services has become a standard for application-to-application interoperability, and it is now one of the most frequently used designs by enterprise architects. Microsoft has expanded on its .NET deliverables by offering its Passport authentication service as an XML Web service this summer. Passport now supporting XML and also WS Security capabilities are signs that a shift is occurring that will ultimately increase developer productivity and open the way for a new class of applications in the future.
Network tiered approach
Developers are building complex systems utilizing components from the span of their network offerings. It is a tiered approach where the end-result is more complex, and upon completion of the application the developers can add individual components that differentiate the final product. This brings application development into the larger scheme of the marketplace, as developers are now able to focus on business value rather than just building infrastructure. The end result is a faster time to market, higher developer productivity, better quality software and more tailored solutions for consumers to choose.
XML and Web services
And more recently, the Internet has opened up yet another paradigm of application development with XML and Web services. The network tiered approach of the past allowed applications to be created for a particular business, but the beauty of XML is that applications can now interoperate regardless of the platform or the business served. Web services and XML have changed the way developers look at application development, and together they create a gateway to allow applications to act more as interoperable services rather than independent islands.
The concept of applications as a service is possible because XML couples the productive aspects of network tiered computing with message-oriented concepts of the Web. These two methods of computing meshed together form the newest stage in the evolution of application development called Web services, which allows developers to leverage from existing sources of data and services over the Internet.
Developers can then call up Web APIs from various locations and be routed across the Internet to a service residing on a remote system. A service such as Passport enables a developer to provide authentication for an application from a remote service. Also, since XML is the standard for building Web services, the issue is no longer which platform to choose or develop on. This allows business to concentrate on core functionality rather than on technology.
Passport provides a centralized authentication system for all .NET services. Its Single Sign In (SSI) technology means users no longer have to remember multiple user names and passwords for every Web site that requires them to log in. A single Passport account serves as identification to enter all participating sites.
Companies can employ this already-available authentication tool to implement new applications that were not possible before. Without the underlying infrastructure or money to spend on new technology, but a large investment in Web services from a business-perspective, companies can use Passport and hook up to a ready-made database of users that lets them in readily and easily. Another advantage is that the Web services option is both cheaper and easier than buying an additional authentication package or building it from scratch.
Passport offers the capability for developers to bind authentication within XML Web services. It makes a lot of sense and takes away a lot of fears. Why should developers deal with writing all of the security levels and the user identification list?
Developers need to work with line-of-business people, to think beyond a single application to how the company can build a customer interface. This will help build solutions that can handle more customers with less resources and extend the reach of business applications.
It is clear that Web services provide value through the interoperability across platforms and vendor offerings, but the value diminishes if users need to provide credentials every time a boundary is crossed.
In order to achieve a SSI system, the architecture of the system must be flexible enough to allow a method of authenticating users and services through disparate systems and networks. Through adopting Passport as the authentication and identity provider and strategic approach to solutions architecture, developers and development teams are on the mission of building security and identity into the boilerplate of the solution. This not only simplifies the complexity of building secure applications by outsourcing the identity and authentication piece to a "trusted" specialized agent; but also gives the Web service the ability to concentrate on the service provided and the authority to consume it.