Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

XmlSecureResolver Constructor (XmlResolver^, PermissionSet^)

 

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.

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 = gcnew 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 = gcnew XmlSecureResolver( resolver,myPermissions );

   // Get the object.
   Uri^ fullUri = sResolver->ResolveUri( nullptr, fileURL );
   return sResolver->GetEntity( fullUri, nullptr, nullptr );
}

.NET Framework
Available since 1.1
Return to top
Show:
© 2017 Microsoft