Actually, even running the app pool as Local System won't get around CAS. This is an ASP.NET code level check that isn't controlled by the process identity.
To change it, you must change it in the root web.config file. But there are 2 considerations to be mindful of:
-
Giving some people full trust violates the trust of the whole server, unless you and everyone else on the server trust them. For example, you can set to full trust for your own admin site, but if you do it just because someone's site doesn't work in partial trust, that person now has access to get around the CAS security check which defeats the purpose of CAS. So, for CAS to work properly, it needs to apply to everyone, not just some people.
-
Every time you 'touch' web.config, an AppDomain recycle will occur on the entire server, so all InProc session state and caching will be lost and you'll have many slow first-page-loads. So, the change has a large impact on the server.
But, that said, if you decide to do it, here is how:
In your root web.config, under the <configuration> level, add something like this:
<location allowOverride="false" path="Default Web Site">
<system.web>
<securityPolicy>
<trustLevel name="Full" policyFile="internal"/>
<trustLevel name="High" policyFile="web_hightrust.config"/>
<trustLevel name="Medium" policyFile="web_mediumtrust.config"/>
<trustLevel name="Low" policyFile="web_lowtrust.config"/>
<trustLevel name="Minimal" policyFile="web_minimaltrust.config"/>
</securityPolicy>
<trust level="Full" originUrl=""/>
</system.web>
</location>
This will apply to just the site set in the path attribute and can be set to any of the security policies defined, or Full, as in this example.
Thanks,
Scott