WO9966400A2

Centralized authentication, authorization and accounting server with support for multiple transport protocols and multiple client types

Abstract

A system and method for authenticating and authorizing user access to a computer network. An AAA server comprises a plurality of Authentication transport protocol modules that interface with one or more clients using a native authentication transport protocol. The AAA server is coupled with a DBMS system that stores user authentication, authorization and accounting information in a standard format. Authentication and authorization are performed using a five phase process comprising the phases: Augmentation; Selection; Authentication; Authorization and Confirmation. During the Augmentation phase, client requests are translated into a standard internal format. The requests are parsed into a set of attribute/value pairs according to a parse rules table. In the Selection phase, the AAA server determines the details of the access request and identifies the permit required to authorize access. A rules table is used, wherein a particular row in the rules table is selected according to the attribute/value pairs from the Augmentation phase. The rules table provides the necessary details for the AAA server to formulate a proper response to the client. In the Authentication phase, the AAA server determines if the log in information provided by the user matches information stored in the user record. In the Authorization phase, the AAA server determines if the user is authorized to access the requested service by determining if the permit retrieved in the Selection phase matches the permit stored in the user database. In the Confirmation phase, the AAA server determines if a port limit has been exceeded and checks the client request for inconsistencies.

WO9966400A2, drawing sheet 1
Sheet 1 of 6

Term

No projected expiry on record.

  1. Priority and filed
  2. Published
  3. Today

15 claims: 3 independent, 12 dependent

  1. 1
    What Is Claimed Is:1. A system for authenticating and authorizing user access to a computer network comprising: a database management system;and an AAA server comprising: a plurality of authentication transport protocol support modules, each providing support for receiving requests from clients and sending answers to clients in a particular authentication transport protocol;and an AA module coupled to said plurality of transport protocol modules and said database management system.
  2. 4
    A process for authenticating and authorizing a request for access to a computer network from a client comprising the steps of:receiving, at one of a plurality of transport protocol support modules, the request, wherein the request is formatted in accordance with a particular authentication transport protocol corresponding with said one of a plurality of transport protocol support modules;translating, at said one of a plurality of transport protocol support modules, the request from said particular authentication transport protocol into a standard format;augmenting the request, wherein said augmenting step includes parsing said standard format to create a tuple vector in accordance with a parse rules table;selecting a row in a rules table by matching one or more tuples in said tuple vector with one or more values in said rules table;retrieving a permit from said selected row in said selecting step;authenticating the request by comparing one or more tuples in said tuple vector with a user record in a database management system, wherein said user record corresponds with a particular user specified in the request;authorizing the request by comparing said permit from said retrieving step with a permit stored in said user record;constructing an answer to the client in accordance with results from said augmentation, selection, authentication and authorization steps;and sending said answer to the client.
  3. 10
    A computer program product comprising a computer useable medium having computer program logic stored therein, said computer program logic for authenticating and authorizing a request for access to a computer network from a client, wherein said computer program logic comprises:means for enabling the computer to receive, at one of a plurality of transport protocol support modules, the request, wherein the request is formatted in accordance with a particular authentication transport protocol corresponding with said one of a plurality of transport protocol support modules;means for enabling the computer to translate, at said one of a plurality of transport protocol support modules, the request from said particular authentication transport protocol into a standard format;means for enabling the computer to augment the request, wherein said augmenting means includes means for enabling the computer to parse said standard format and create a tuple vector in accordance with a parse rules table;means for enabling the computer to select a row in a rules table by matching one or more tuples in said tuple vector with one or more values in said rules table;means for enabling the computer to retrieve a permit from said selected row;means for enabling the computer to authenticate the request by comparing one or more tuples in said tuple vector with a user record in a database management system, wherein said user record corresponds with a particular user specified in the request;means for enabling the computer to authorize the request by comparing said permit from said retrieving means with a permit stored in said user record;means for enabling the computer to construct an answer to the client in accordance with results from said augmentation, selection, authentication and authorization means;and means for enabling the computer to send said answer to the client.