Freigeben über


XmlSecureResolver-Konstruktor (XmlResolver, PermissionSet)

Initialisiert eine neue Instanz der XmlSecureResolver-Klasse mit dem angegebenen XmlResolver und System.Security.PermissionSet.

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

Syntax

'Declaration
Public Sub New ( _
    resolver As XmlResolver, _
    permissionSet As PermissionSet _
)
'Usage
Dim resolver As XmlResolver
Dim permissionSet As PermissionSet

Dim instance As New XmlSecureResolver(resolver, permissionSet)
public XmlSecureResolver (
    XmlResolver resolver,
    PermissionSet permissionSet
)
public:
XmlSecureResolver (
    XmlResolver^ resolver, 
    PermissionSet^ permissionSet
)
public XmlSecureResolver (
    XmlResolver resolver, 
    PermissionSet permissionSet
)
public function XmlSecureResolver (
    resolver : XmlResolver, 
    permissionSet : PermissionSet
)

Parameter

Beispiel

Im folgenden Beispiel wird ein XmlSecureResolver-Objekt unter Verwendung eines angepassten Berechtigungssatzes erstellt.

public shared function GetFile (fileURL as String , resolver as XmlResolver) as Object
 
  '  Generate the default PermissionSet using the file URL.
  Dim evidence as Evidence = XmlSecureResolver.CreateEvidenceForUrl(fileURL)
  Dim myPermissions as PermissionSet = SecurityManager.ResolvePolicy(evidence)

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

  '  Use the modified PermissionSet to construct the XmlSecureResolver.
  Dim sResolver as XmlSecureResolver = new XmlSecureResolver(resolver, myPermissions)

  '  Get the object.
  Dim fullUri as Uri = sResolver.ResolveUri(nothing, fileURL)
  return sResolver.GetEntity(fullUri, nothing, nothing)
end function 
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 https://www.contoso.com.
  // Create a WebPermission which only allows access to https://www.contoso.com.
  WebPermission myWebPermission = new WebPermission(NetworkAccess.Connect, "https://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);
} 
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 https://www.contoso.com.
   // Create a WebPermission which only allows access to https://www.contoso.com.
   WebPermission^ myWebPermission = gcnew WebPermission(
      NetworkAccess::Connect,"https://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 );
}
public static Object GetFile(String fileURL, XmlResolver resolver)
{
    // Generate the default PermissionSet using the file URL.
    System.Security.Policy.Evidence evidence = XmlSecureResolver.
        CreateEvidenceForUrl(fileURL);
    PermissionSet myPermissions = System.Security.SecurityManager.
        ResolvePolicy(evidence);
    // Modify the PermissionSet to only allow access to 
    // https://www.contoso.com.
    // Create a WebPermission which only allows access to 
    // https://www.contoso.com.
    WebPermission myWebPermission = new WebPermission(
        NetworkAccess.Connect, "https://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);
} //GetFile

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1

Siehe auch

Referenz

XmlSecureResolver-Klasse
XmlSecureResolver-Member
System.Xml-Namespace
CreateEvidenceForUrl
System.Security.Policy.Evidence
System.Net.WebPermission
System.Security.SecurityManager

Weitere Ressourcen

Verwenden der PermitOnly-Methode