Authorization Refactoring for 213

Version: 1.1
Author: Ivan R. Judson <judson@mcs.anl.gov>, Thomas D. Uram <turam@mcs.anl.gov>, Eric Olson <eolson@mcs.anl.gov>
Status: Draft

Abstract

This AGEP describes some modifications to the Authorization modules to support more general authorization. This more general authorization is proposed to be pushed throughout the existing toolkit (replacing other authorization solutions that are in place). It also provides the basis for future work for fine-grained authorization support.

Overview

Authorization is necessary throughout the AGTk, currently there is limited support for authorization but it needs to be cleaned up and have interfaces completed and documented. This AGEP proposes to do that, plus, rework the toolkit to use the resulting authorization solution.

As a part of this refactoring of the authorization, it's proposd that the new authorization modules be placed in the AccessGrid.Security package space to keep a clear delineation between the security code and the main toolkit code.

Summary of Modifications

Currently there are two separate authorization solutions in the AGTk, between the two solutions the following classes are defined:

Solution 1:
Solution 2:
Proposed Solution:
 

Module Organization

  • AccessGrid
    • Security
      • Subject.py
      • Role.py
      • AuthorizationManager.py
      • Action.py
      • pyGlobus.py

Deprecated Packages

  • SecurityManager.py
  • InvocationWrapper.py
  • RoleManager.py

Specifications

Security Issues

This AGEP should create a uniform authorization environment that is used throughout the toolkit. By unifying on a single authorization solution the toolkit should benefit from less confusion for developers which in turn makes it less likely there are security issues related to developer error.

Interoperability Issues

There should be no resulting interoperability issues, this is an internal refactoring.

Open Issues

References

  1. AG Toolkit Design: Certificate Management Subsystem, Robert Olson, 2003.
  2. Virtual Venues Access Control: Architecture and Design Notes, Robert Olson, 2003.
  3. Certificate Management in AG 2.0, Robert Olson, 2003