public static bool DetermineApplicationTrust(ActivationContext activationContext, TrustManagerContext context)
{
if (activationContext == null)
{
throw new ArgumentNullException("activationContext");
}
AppDomainManager domainManager = AppDomain.CurrentDomain.DomainManager;
if (domainManager != null)
{
HostSecurityManager hostSecurityManager = domainManager.HostSecurityManager;
if (hostSecurityManager != null && (hostSecurityManager.Flags & HostSecurityManagerOptions.HostDetermineApplicationTrust) == HostSecurityManagerOptions.HostDetermineApplicationTrust)
{
ApplicationTrust applicationTrust = hostSecurityManager.DetermineApplicationTrust(CmsUtils.MergeApplicationEvidence((Evidence)null, activationContext.Identity, activationContext, (string[])null), (Evidence)null, context);
if (applicationTrust == null)
{
return(false);
}
return(applicationTrust.IsApplicationTrustedToRun);
}
}
ApplicationTrust applicationTrustInternal = ApplicationSecurityManager.DetermineApplicationTrustInternal(activationContext, context);
if (applicationTrustInternal == null)
{
return(false);
}
return(applicationTrustInternal.IsApplicationTrustedToRun);
}