Sicherheitsberechtigungen
Aktualisiert: November 2007
Die Common Language Runtime lässt für Code nur die Ausführung der Operationen zu, für die der Code über Berechtigungen verfügt. Die Laufzeit verwendet Objekte, die als Berechtigungen bezeichnet werden, um den Mechanismus zum Erzwingen von Beschränkungen für verwalteten Code zu implementieren. Berechtigungen werden hauptsächlich wie folgt eingesetzt:
Code kann die Berechtigungen anfordern, die er benötigt oder benötigen könnte. Ob derartige Anforderungen erfüllt werden, wird durch das Sicherheitssystem von .NET Framework bestimmt. Anforderungen werden nur erfüllt, wenn die Beweise des Codes die Erteilung solcher Berechtigungen rechtfertigen. Code erhält niemals höhere Berechtigungen, als es die aktuellen Sicherheitseinstellungen für eine Anforderung zulassen. Auf Anforderung werden dem Code jedoch geringere Berechtigungen erteilt.
Code kann zur Laufzeit Berechtigungen erteilt werden. Dies geschieht über die Eigenschaften der Codeidentität, die angeforderten Berechtigungen und die Vertrauenswürdigkeit des Codes, gemäß der vom Administrator festgelegten Sicherheitsrichtlinie. Weitere Informationen über die Erteilung von Berechtigungen durch die Common Language Runtime finden Sie unter Sicherheitsrichtlinie und Gewährung von Berechtigungen.
Code kann fordern, dass der Aufrufer über bestimmte Berechtigungen verfügt. Wenn Sie eine Forderung nach einer bestimmten Berechtigung für Code festlegen, muss sämtlicher Code, der auf diesen Code zugreift, über die Berechtigung zur Ausführung verfügen.
Es gibt drei Arten von Berechtigungen, die jeweils einen bestimmten Zweck verfolgen:
Codezugriffsberechtigungen, die den Zugriff auf eine geschützte Ressource oder die Fähigkeit zum Ausführen einer geschützten Operation darstellen.
Identitätsberechtigungen, die angeben, dass Code über Anmeldeinformationen verfügt, die eine bestimmte Art der Identität unterstützen.
Rollenbasierte Sicherheitsberechtigungen stellen ein Verfahren bereit, mit dem festgestellt werden kann, ob ein Benutzer bzw. ein im Namen des Benutzers handelnder Agent eine bestimmte Identität hat oder Member einer bestimmten Rolle ist. PrincipalPermission ist die einzige rollenbasierte Sicherheitsberechtigung.
Die Laufzeit stellt integrierte Berechtigungsklassen in verschiedenen Namespaces bereit und unterstützt darüber hinaus Entwurf und Implementierung benutzerdefinierter Berechtigungsklassen.
Siehe auch
Konzepte
Berechtigungen der rollenbasierten Sicherheit