Multi-platform single sign-on database driver
AssigneeProgress Software Corporation
InventorsJames Walter Silhavy, Dirk Voet
Life of this patent
Estimating the term…
Abstract
Systems and methods of performing single sign-on authentication from multiple platforms when establishing a connection to a database are described. An application can securely access a database based on user credentials provided during a prior authentication. In an embodiment, single sign-on is accomplished by relying on existing and emerging authentication, security service, security mechanism, and wire protocols, enabling the creation of drivers to accommodate various platforms and databases. In another embodiment, a pure type 4 Java Driver is used, eliminating dependencies on native operating functionality.
Claims29
A method of automatically providing access to a database from a client application based on prior authentication of a user, the method comprising:
- obtaining a login credential created responsive to an input provided by the user during the prior authentication;
- creating, by a driver, a security context that includes a context object based at least in part on an authenticated subject representing an authenticated instance of the user, the authenticated subject including the login credential;
- initializing, by the driver, the security context including creating a login request based on a wire protocol and populating the login request with a token based on an instance of the security context;
- and
- using the security context to establish a secure connection to the database for communication between the client application and the database.
A non-transitory computer-readable storage medium storing computer-executable program code for authenticating a client application to a database based on prior authentication of a client user using a security mechanism, the computer-executable program code comprising:
- an authentication module for performing authentication of an instance of the client user to the security mechanism based on a client user credential generated during the prior authentication;
- a client security services module for facilitating a secure connection for communications between the database and the client application consistent with the security mechanism and communicating with the authentication module to create a security context that includes a context object based at least in part on an authenticated subject representing an authenticated instance of the client user, the authenticated subject including a login credential;
- and
- a driver for creating a wire protocol connection to the database from the client application based on a wire protocol and for communicating requests from the client application to the database using the secure connection facilitated by the client security services module, the driver initializing the security context by creating a login request based on the wire protocol and populating the login request with a token based on an instance of the security context.
A method of supplying automatic access to a database from a client application based on prior authentication of a user, the method comprising:
- creating a connection object for connecting the client application to the database;
- using the connection object to create a secure connection based on a user credential generated during the prior authentication of the user and a security context, the security context including a context object and created based at least in part on an authenticated subject representing an authenticated instance of the user, the authenticated subject including a login credential;
- initializing the secure connection including creating a login request based on a wire protocol and populating the login request with a token based on an instance of the security context;
- and
- communicating with the database over the initialized secure connection, wherein the client application operates in a client environment and the database operates in a database environment, and the client environment comprises a different type of environment than the database environment.
A method of automatically providing access to a database to a user based on prior authentication of the user, the method comprising:
- receiving a log on request from a driver, wherein the log on request includes a client token and is received subsequent to establishment of a security context, the establishment of the security context accomplished using a user credential generated during the prior authentication of the user, the security context including a context object and created based at least in part on an authenticated subject representing an authenticated instance of the user, the authenticated subject including a login credential, the security context initialized by creating the log on request based on a wire protocol and populating the log on request with the client token based on an instance of the security context;
- extracting the client token from the log on request;
- sending the client token to a security services module for authentication of the client token;
- and
- sending an acknowledgement of the log on request to the driver.
Dependencies are inferred from the claim text.