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

ResolveIdentityPermissions() static private method

static private ResolveIdentityPermissions ( PermissionSet ps, Evidence evidence ) : void
ps PermissionSet
evidence System.Security.Policy.Evidence
return void
		internal static void ResolveIdentityPermissions (PermissionSet ps, Evidence evidence)
		{
#if NET_2_0
			// in 2.0 identity permissions can now be unrestricted
			if (ps.IsUnrestricted ())
				return;
#endif
			// Only host evidence are used for policy resolution
			IEnumerator ee = evidence.GetHostEnumerator ();
			while (ee.MoveNext ()) {
				IIdentityPermissionFactory ipf = (ee.Current as IIdentityPermissionFactory);
				if (ipf != null) {
					IPermission p = ipf.CreateIdentityPermission (evidence);
					ps.AddPermission (p);
				}
			}
		}