XmlResolver resolver;
PermissionSet permissionSet;
- public XmlSecureResolver(XmlResolver resolver, string securityUrl) : this(resolver, CreateEvidenceForUrl(securityUrl)) {}
#if DISABLE_CAS_USE
- public XmlSecureResolver(XmlResolver resolver, Evidence evidence) : this(resolver, new PermissionSet (PermissionState.None)) {}
+ public XmlSecureResolver(XmlResolver resolver, string securityUrl) : this(resolver, (PermissionSet) null) {}
+
+ public XmlSecureResolver(XmlResolver resolver, Evidence evidence) : this(resolver, (PermissionSet) null) {}
#else
+ public XmlSecureResolver(XmlResolver resolver, string securityUrl) : this(resolver, CreateEvidenceForUrl(securityUrl)) {}
+
public XmlSecureResolver(XmlResolver resolver, Evidence evidence) : this(resolver, SecurityManager.GetStandardSandbox(evidence)) {}
#endif
}
public override object GetEntity(Uri absoluteUri, string role, Type ofObjectToReturn) {
+#if !DISABLE_CAS_USE
permissionSet.PermitOnly();
+#endif
return resolver.GetEntity(absoluteUri, role, ofObjectToReturn);
}
}
public static Evidence CreateEvidenceForUrl(string securityUrl) {
+#if DISABLE_CAS_USE
+ return null;
+#else
Evidence evidence = new Evidence();
-#if !DISABLE_CAS_USE
if (securityUrl != null && securityUrl.Length > 0) {
evidence.AddHostEvidence(new Url(securityUrl));
evidence.AddHostEvidence(Zone.CreateFromUrl(securityUrl));
}
}
}
-#endif
return evidence;
+#endif
}
+#if !DISABLE_CAS_USE
[Serializable]
private class UncDirectory : EvidenceBase, IIdentityPermissionFactory {
private string uncDir;
return ToXml().ToString();
}
}
+#endif
}
}