Source: http://www-106.ibm.com/developerworks/library/gr-watch4.html?ca=dgr-lnxw01GridWatchP5

Level: Introductory

Thomas Myer (tom@tripledogdaremedia.com)
Principal, Triple Dog Dare Media
13 May 2004

The GGF Security area has its hands full with requirements.

In past installments of this column, I've introduced you to the Global Grid Forum (GGF) -- who they are, what they're up to, where to read important documents, how to get involved -- and to the Data and Architecture areas of the GGF. Recently, I covered OGSA (Open Grid Services Architecture) and OGSI (Open Grid Services Infrastructure) as well as some proposed changes to WSRF.

I've said it before, but I'll say it again: things are changing fast in the grid community. So fast, in fact, that it's sometimes a challenge to keep up with it. It's definitely a developing story. With that in mind, let's get on with the current focus: security.

So what's the big deal with security?
We live in an interesting society -- one that is at once fairly open and increasingly less secure. Our communication networks connect millions of systems and billions of individuals on the planet. These myriad systems, and the data they contain, present juicy targets for those who want to steal, damage, corrupt, or otherwise gain unlawful access to those systems.

When it comes to computational grids, some old challenges that have always existed in the realm of computing security still remain. Security is always a balance of vulnerabilities and threats. Without both sides of the equation, you don't have the correct picture.

  • Vulnerabilities are weaknesses or flaws that allow unauthorized users to gain access to the system or data. Every operating system and piece of software on earth has vulnerabilities. Some are obvious, others hard to find; some are catastrophic, others trivial. Most vendors offer patches for their different systems, and a good majority of them are security related.
  • Threats are potential violations of security. Hundreds, if not thousands, of threats can be enumerated for any given vulnerability. Threats can come from viruses, worms, human interaction with a TCP/IP protocol, and so on.

In the world of security, vulnerabilities become more acute if credible threats exist to exploit them. For example, theoretically speaking, having a wide-open Web server on your home network certainly makes for a vulnerable system. However, if the LAN is self-enclosed without an opening to the greater Internet, then there aren't that many threats to it (apart from the ones mounted by you). However, connect that LAN to the Internet via a wireless access point, and now you have a different story. Anyone who can sniff out your wireless network can now gain access to the Web server. The possibility is still remote, but the threat is much larger.

Let's take a closer look at grids. Grids can be used to harness computational horsepower, provide access to unified data, or other intensive tasks. From a security manager's viewpoint, a corporate grid represents a high-value target for anyone who would want to gain unauthorized access. They need to be protected not only because they are high-value assets representing lots of hardware and software, but because they often serve a strategic function that's central to success.

At the same time, security managers understand that successful security is about tradeoffs. Tighten security too much, and it'll become harder for the R&D folks to share their findings with Engineering. Make it too hard to share information, and pretty soon all kinds of ad-hoc systems will start popping up that provide back doors to the system. (Think about all those folks who installed desktop modems to circumvent their network security only to leave their company wide open to war dialers).

From a grid perspective, other challenges are involved with running a secure ship:

  • How do you administer the ultimate in heterogeneous environments? In any particular grid, you will have a multitude of hardware/OS configurations, potentially owned by different corporations, probably in multiple countries, all providing resources or horsepower to multiple communities of users, all of whom probably have different behavior and task profiles.
  • How do you deal with authorization and authentication? In any given grid, you might have multiple layers of ownership. The network is owned and managed by the organization. Individual machines are also owned by the organization, but for practical purposes, are run by the person assigned to it. Finally, tasks that are run on the grid are owned by the task originator, but the task has to make its way through the myriad possible authorization scenarios. On top of that, the task originator might be a software process or intelligent agent, not a human user.
  • How do you express and transport security policies? What language do you use to express a security policy? Once codified, how do you disseminate this policy to the entire grid in such a manner that all systems, users, and agents receive and understand the policy?
  • Finally, how do you keep up with all the changes on a grid? Users come and go, whether human or software. If a user is cut off from the grid, what do you do with all the tasks that might exist that originated with that user? Clear-cut answers might not be appropriate. Let's say you decide to terminate all tasks when you terminate a user account. Well, some users might have tasks that perform recurring queries that speed up work in a particular department. Even if that user is terminated, someone else in that department would likely find those queries worth saving.

What the security area of the GGF is up to
As you can tell, there are lots and lots of requirements needed to make security work on a grid. The question then becomes, how is the Security area of the GGF addressing these requirements?

One thing is certain: they can't rely on simplistic notions of security. They need robust, flexible, and operational software. It has to work in the real world, allow for all kinds of contingencies, but be powerful enough to drive security throughout the grid.

You can't have a successful piece of operational software if it's too complex. One of the big problems with extremely popular PKI-based (Public Key Infrastructure) security is the complexity involved. You have public and private keys, both of which need to be managed; hierarchical levels of certificate authorities; and the process by which senders encrypt and receivers decrypt information before it can be shared. You might ask, "Why is it so popular?" The answer is, it provides some pretty kick-butt security, regardless of complexity.

Security working/research groups
Here's a brief rundown of the GGF workgroups:

Authorization Frameworks and Mechanisms WG (AuthZ-WG)
Current and future security requirements of grid systems call for advanced, fine-grain, and flexible authorization mechanisms. This group will define a conceptual grid authorization framework for grid developers with the goal to provide a basis for the design of such grid authorization systems. A main goal of this document is to provide for the immediate needs in the area of authorization by categorizing existing authorization modules and systems as a first step toward standardization of interfaces among modules. Another important aim of this work is to put existing services and modules in relation to newer grid architectures currently under development. We will synchronize our efforts with the work done by other groups in the security area, specifically with S3A and OGSA-Sec.

Open Grid Services Architecture Security Working Group (OGSA-SEC)
The purpose of the OGSA Security WG (OGSA-Sec) is to enumerate and address the grid security requirements in the context of OGSA. Given that OGSA leverages Web services, the OGSA security architecture will leverage the Web services security foundations published in the WS-Security specification and under the context of the Web Services Security Roadmap published in April, 2002. OGSA-Sec will closely monitor the related efforts in other standards bodies (for example, OASIS); there is no intention of duplicating the efforts within other standards bodies. The primary outcome of the OGSA Security WG will be two documents: [1] "The Security Architecture for Open Grid Services": This document will describe a security architecture intended to be consistent with the security model currently being defined for the Web services framework used to realize OGSA's service-oriented architecture. [2] "OGSA Security Roadmap": This document is a roadmap enumerating a set of proposed specifications to be defined in the Global Grid Forum in order to ensure interoperable implementations of the OGSA Security Architecture. This group will discuss topics related primarily to the development of these two documents.

Certificate Authority Operations Working Group (CAOPS-WG)
The purpose of the Certificate Authority Operations (CAOPS) Working Group is to develop operational procedures and guidelines that facilitate the use of X.509 and other technologies for cross-grid authentication. By developing common practices, the group hopes to facilitate mutually accepted authentication services. The GGF has developed a model CP/CPS to be used by sites and virtual organizations that will deploy a CA. The efforts of this working group will focus on issues associated with deploying certificate authorities. The CAOPS WG will not be working on user private key management.

OGSA Authorization Working Group (OGSA-AUTHZ)
The objective of the OGSA Authorization WG is to define the specifications needed to allow for basic interoperability and pluggability of authorization components in the OGSA framework. A number of authorization systems are emerging in the grid today (Akenti, PERMIS, CAS, VOMS, Cardea, and so on), and these specifications will allow the solutions to be interchangeably used with middleware that requires authorization functionality.

Site Authentication, Authorization, and Accounting Requirements RG (SA3-RG)
The purpose of this research group is to collect and codify the requirements of existing grid resource sites with respect to the acceptance of grid credentials for access to their services. Where those requirements are nonuniform, or even mutually exclusive, the group will strive to recommend hooks that grid toolkits or applications should provide for the sites to insert their own implementations of their requirements.

Authority Recognition Research Group (ARRG-RG)
Trust between entities in many transactions is enabled by a separate authority issuing assertions (for example, X.509 certificates, SAML assertions, Kerberos tickets) regarding the identity, other characteristics of the actors involved, or both.

The assertions issued by an authority must be recognized as valid and appropriate to its requirements before a party will rely on them. Whether or not an assertion from a particular authority is appropriate will depend on a number of factors, including the commitments the authority makes with respect to the assertion, the liabilities the authority is willing to assume, and the obligations assumed by the relying party if they use the assertion. Existing mechanisms do not facilitate the dissemination of this information from the authority to the relying party to enable an informed recognition decision.

The Authority Recognition Research Group will explore the potential for simple, inexpensive, semi-automatable mechanisms by which a relying party will make the decision to recognize the assertions of an authority. It is hoped that such mechanisms will simplify and enable the establishment of trust between grid participants.

Summary
I've covered a lot of territory just now. If it seems that there is a lot going on, that it's changing a lot, or that it's somewhat confusing, then you'd be right on all counts.

Resources

  • You can learn more about the GGF by going to http://www.ggf.org. This site contains general information on the group, as well as links to important documents and events (such as ongoing conferences). To see all the research and working groups within each Area, go to GGF@work and click the Area Overview.

  • Another important site is GridForge, which is at http://forge.ggf.org. If you have a need for more detail on what each of the working Areas is up to, then sign up for a free account. Doing so will give you access to a working drafts of specifications and other documents in each Area. The site also contains forums and bug tracking tools for developer/researcher collaboration.

  • Take a look at all the projects going on the GGF Security area at https://forge.gridforum.org/projects/sec.

  • If you want to browse all the GGF working groups, go to http://www.ggf.org/L_WG/wg.htm.

  • Ian Foster's paper on the "Anatomy of the Grid" at http://www.globus.org/research/papers/anatomy.pdf is pretty much required reading, as is his paper on the "Physiology of the Grid" at http://www.globus.org/research/papers/physiology.pdf.

About the author
Author photoThomas Myer is the founding principal of Triple Dog Dare Media, an Austin-TX based firm that specializes in building Web services, XML, and database applications. He can be reached at tom@tripledogdaremedia.com


e-mail it!

What do you think of this document?
Killer! (5) Good stuff (4) So-so; not bad (3) Needs work (2) Lame! (1)

Comments?



developerWorks > Grid computing
developerWorks
  About IBM  |  Privacy  |  Terms of use  |  Contact