System.Security.SecurityManager.SecurityManager.ResolvePolicy C# (CSharp) Method

ResolvePolicy() public static method

public static ResolvePolicy ( Evidence evidence ) : PermissionSet
evidence System.Security.Policy.Evidence
return PermissionSet
		public static PermissionSet ResolvePolicy (Evidence evidence)
		{
			// no evidence, no permission
			if (evidence == null)
				return new PermissionSet (PermissionState.None);

			PermissionSet ps = null;
			// Note: can't call PolicyHierarchy since ControlPolicy isn't required to resolve policies
			IEnumerator ple = Hierarchy;
			while (ple.MoveNext ()) {
				PolicyLevel pl = (PolicyLevel) ple.Current;
				if (ResolvePolicyLevel (ref ps, pl, evidence)) {
					break;	// i.e. PolicyStatementAttribute.LevelFinal
				}
			}

			ResolveIdentityPermissions (ps, evidence);

			return ps;
		}

Same methods

SecurityManager.SecurityManager::ResolvePolicy ( Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, PermissionSet &denied ) : PermissionSet