Systems and methods of dynamically introducing security features into a
client-server application program are described. A security server
between an application server and a database has multiple security
components with a shared dependency. This shared dependency enables the
introduction of a new security component providing a new security
function without compromising the security of the application program.
The new security component acquires state information from other security
components in the security server thereby dynamically reconfiguring the
component-based security system.