Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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
- resolver
Der XmlResolver, der mit XmlSecureResolver gekapselt wurde.
- permissionSet
Das auf den zugrunde liegenden XmlResolver anzuwendende System.Security.PermissionSet. Der XmlSecureResolver ruft PermissionSet.PermitOnly für das PermissionSet auf, bevor GetEntity für den zugrunde liegenden XmlResolver aufgerufen wird.
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