Patent ID: 8397290

Claim:
A computer storage medium, wherein the computer storage medium does not include a transmission signal, the computer storage medium including executable instructions which, when executed by a processor, provide a security infrastructure for controlling access by an associated subject to resources, by: providing an operating system running on a processor, the processor executing an application via the operating system; implementing, by the processor, a security structure over the operating system for controlling resources accessed by the application and calls that the application may make, the processor implementing the security structure by: when the processor creates a run-time object, providing a security identifier by the processor for defining a unique identifier for an associated subject and for specifying an account associated with the associated subject; mapping the unique identifier to an entry in an account database maintained in memory for determining basic and extended privileges assigned to the security identifier; accumulating, by the processor, identities of associated subjects along migration of the associated subject; creating, by the processor, a security token for defining a set of identities and a collection of privileges assigned to the set of identities based on the determination of the basic and extended privileges assigned to the security identifier; and determining, by the processor, access privileges of the associated subject by: intersecting all of the accumulated identities of the associated subject and the collection of privileges; and capturing a call chain context of the associated subject and analyzing the associated subject to verify that each accumulated identity in the call chain and each associated subject has access to the requested resource before granting access to the resource thereby enabling minimal privilege by default, the call chain comprising an application call to a register open key to open a registry, the registry comprising a protected key that cannot be read by a low privilege application, the application call being migrated into a server process that carries an access key for the registry and which implements registry application program interfaces (APIs).