1. A computer-readable storage media comprising computer-executable instructions that, when executed by a processor, perform steps comprising: receiving a manifest defining first, second, and third code assemblies that are members of at least one application, wherein the manifest defines at least one trusted application and application evidence for making a trust decision; evaluating the application evidence to determine if the at least one application is trusted; generating a first, a second, and a third permission grant set for the first, the second, and the third code assemblies, respectively, that are members of the at least one application if the application evidence satisfies at least one condition for trusting the at least one application; passing the permission grant sets to a run-time call stack; calling the second code assembly by the first code assembly; calling the third code assembly by the second code assembly, the third code assembly attempting access of a protected file; and calculating an intersection of the first and the second permission grant sets to determine whether the access to the protected file is permitted.