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.
Wenn Sie mithilfe von RequestMinimum, RequestOptional oder RequestRefuse einen benutzerdefinierten Berechtigungssatz anfordern müssen, können Sie eine XML-Darstellung des gewünschten Berechtigungssatzes auf zwei Arten verwenden: Entweder Sie übergeben eine Zeichenfolge, die den tatsächlichen, XML-codierten Berechtigungssatz enthält, oder Sie geben den Speicherort einer XML-Datei an, die den codierten Berechtigungssatz enthält. Im folgenden Beispiel wird XML mit PermissionSetAttribute verwendet. Das XML-Flag ist eine Zeichenfolge mit einem XML-codierten Berechtigungssatz, das in diesem Fall eine uneingeschränkte UIPermission und eine uneingeschränkte RegistryPermission darstellt.
Beispiel
'The attribute is placed at the assembly level.
Imports System
Imports System.Runtime.InteropServices
Imports System.Security.Permissions
<assembly: PermissionSetAttribute(SecurityAction.RequestMinimum, XML := "<PermissionSet class=""System.Security.PermissionSet"" version=""1""><Permission class=""System.Security.Permissions.UIPermission, mscorlib"" version=""1""><AllWindows/></Permission><Permission class=""System.Security.Permissions.RegistryPermission, mscorlib"" version=""1""><Unrestricted/></Permission></PermissionSet>")>
Namespace MyNamespace
Public Class MyClass1
Public Sub New()
End Sub
Public Sub MyMethod()
'Perform user interface operations here.
End Sub
End Class
End Namespace
//The attribute is placed at the assembly level.
using System.Security.Permissions;
[assembly:PermissionSetAttribute(SecurityAction.RequestMinimum, XML="<PermissionSet class=\"System.Security.PermissionSet\" version=\"1\"><Permission class=\"System.Security.Permissions.UIPermission, mscorlib\" version=\"1\"><AllWindows/></Permission><Permission class=\"System.Security.Permissions.RegistryPermission, mscorlib\" version=\"1\"><Unrestricted/></Permission></PermissionSet>")]
namespace MyNamespace
{
using System;
using System.Runtime.InteropServices;
public class MyClass
{
public MyClass()
{
}
public void MyMethod()
{
//Perform user interface operations here.
}
}
}
Das folgende Beispiel veranschaulicht eine Anforderung eines benutzerdefinierten Berechtigungssatzes. Dazu wird der Speicherort und der Name der Datei angegeben, die denselben XML-codierten Berechtigungssatz enthält. Wenn Sie den Speicherort der XML-Datei nicht angeben, sucht die Laufzeit in dem Verzeichnis, in dem sich die Anwendung befindet.
Imports System
Imports System.Runtime.InteropServices
Imports System.Security.Permissions
'The attribute is placed at the assembly level.
<assembly: PermissionSetAttribute(SecurityAction.RequestMinimum, File := "pset.xml")>
Namespace MyNamespace
Public Class MyClass1
Public Sub New()
End Sub
Public Sub MyMethod()
'Perform operations that require permissions here.
End Sub
End Class
End Namespace
//The attribute is placed at the assembly level.
using System.Security.Permissions;
[assembly:PermissionSetAttribute(SecurityAction.RequestMinimum, File = "pset.xml")]
namespace MyNamespace
{
using System;
using System.Runtime.InteropServices;
public class MyClass
{
public MyClass()
{
}
public void MyMethod()
{
//Perform operations that require permissions here.
}
}
}
Erstellen eines XML-codierten Berechtigungssatzes
Zum Erstellen eines XML-codierten Berechtigungssatzes erstellen Sie zunächst eine Instanz des PermissionSet-Objekts und fügen anschließend Instanzen der gewünschten Berechtigungen für das Objekt hinzu. Rufen Sie dann die ToXml-Methode auf, um ein SecurityElement-Objekt zurückzugeben, das die XML-Codierung darstellt, oder rufen Sie die ToString-Methode auf, um eine Zeichenfolgenentsprechung der XML-Codierung zurückzugeben.
Siehe auch
Referenz
PermissionSetAttribute Class
PermissionSet Class
Konzepte
Weitere Ressourcen
Metadaten und selbstbeschreibende Komponenten
Erweitern von Metadaten mithilfe von Attributen
Codezugriffssicherheit