XmlSecureResolver Constructor (XmlResolver, PermissionSet)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Initializes a new instance of the XmlSecureResolver class with the XmlResolver and PermissionSet specified.

Namespace:   System.Xml
Assembly:  System.Xml (in System.Xml.dll)

public XmlSecureResolver(
	XmlResolver resolver,
	PermissionSet permissionSet
)

Parameters

resolver
Type: System.Xml.XmlResolver

The XML resolver that is wrapped by the XmlSecureResolver.

permissionSet
Type: System.Security.PermissionSet

The permission set to apply to the underlying XmlResolver. The XmlSecureResolver calls the PermissionSet.PermitOnly method on the permission set before calling the GetEntity method on the underlying XML resolver.

The following example constructs an XmlSecureResolver object by using a customized permission set.


public static Object GetFile (String fileURL, XmlResolver resolver) {

  // Generate the default PermissionSet using the file URL.
  Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(fileURL);
  PermissionSet myPermissions = SecurityManager.ResolvePolicy(evidence);

  // Modify the PermissionSet to only allow access to http://www.contoso.com.
  // Create a WebPermission which only allows access to http://www.contoso.com.
  WebPermission myWebPermission = new WebPermission(NetworkAccess.Connect, "http://www.contoso.com");
  // Replace the existing WebPermission in myPermissions with the updated WebPermission.
  myPermissions.SetPermission(myWebPermission);

  // Use the modified PermissionSet to construct the XmlSecureResolver.
  XmlSecureResolver sResolver = new XmlSecureResolver(resolver, myPermissions);

  // Get the object.
  Uri fullUri = sResolver.ResolveUri(null, fileURL);
  return sResolver.GetEntity(fullUri, null, null);
} 

.NET Framework
Available since 1.1
Return to top
Show: