Patent ID: 7788497

Claim:
A system including an application server, for use in providing access by a software application to a database, comprising: a computer including a processor, computer readable medium, and application server operating thereon, wherein the application server allows software applications to be associated with a first credential including a first username and password, for use within the application server; a connection pool executing within the application server and operably connected to a database, wherein the connection pool provides access by the software applications to the database; a credential mapper, wherein the credential mapper includes a credential map table that defines a plurality of application server usernames and passwords together with, for each application server username and password pair, a corresponding database username and password, and wherein the credential mapper is adapted to optionally map credentials for use within the application server to credentials for use with the database; wherein, upon a software application optionally electing credential mapping, when threads accessed by the software application use a connection of the connection pool, including a security context having the first credential, the credential mapper converts the security context of the thread, including mapping the first credential as provided in the security context to a second credential including a second username and password, as defined by the credential map table, for use with the database; wherein the second username and password is then sent to the database; and wherein software applications can elect to use credential mapping by setting a credential mapping enabled configuration attribute, including wherein when the credential mapping enabled configuration attribute is set for a software application, the credential mapper maps credentials for thread security contexts associated with that software application, and when the credential mapping enabled configuration attribute is not set for the software application, the software application uses the first credential, or a default credential, to access the database.