CodeAccessPermission Klas

Definitie

Hiermee definieert u de onderliggende structuur van alle machtigingen voor codetoegang.

public ref class CodeAccessPermission abstract : System::Security::IPermission, System::Security::IStackWalk
[System.Serializable]
public abstract class CodeAccessPermission : System.Security.IPermission, System.Security.IStackWalk
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class CodeAccessPermission : System.Security.IPermission, System.Security.IStackWalk
[<System.Serializable>]
type CodeAccessPermission = class
    interface IPermission
    interface ISecurityEncodable
    interface IStackWalk
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CodeAccessPermission = class
    interface IPermission
    interface ISecurityEncodable
    interface IStackWalk
Public MustInherit Class CodeAccessPermission
Implements IPermission, IStackWalk
Overname
CodeAccessPermission
Afgeleid
Kenmerken
Implementeringen

Opmerkingen

Caution

Cas (Code Access Security) is afgeschaft in alle versies van .NET Framework en .NET. Recente versies van .NET respecteren geen CAS-aantekeningen en produceren fouten als CAS-gerelateerde API's worden gebruikt. Ontwikkelaars moeten alternatieve manieren zoeken om beveiligingstaken uit te voeren.

Machtigingen voor codetoegang maken gebruik van een stack-walk om ervoor te zorgen dat alle aanroepers van de code een machtiging hebben gekregen. Als een machtigingsobject is null, wordt het hetzelfde verwerkt als een machtigingsobject met de status PermissionState.None.

De aanroepstack wordt doorgaans weergegeven als uitgroeien, zodat methoden die hoger zijn in de aanroepstack, lager zijn in de aanroepstack.

Overnames van de CodeAccessPermission klasse moeten volledig vertrouwen krijgen om correct te kunnen functioneren als machtigingen die de beveiligingsinfrastructuur uitbreiden. Om te bepalen of de overnames volledig worden vertrouwd, CodeAccessPermission geeft u een InheritanceDemand voortrue = ControlEvidence en .ControlPolicy = true

Notities voor uitvoerders

Wanneer u overdrat van CodeAccessPermission, moet u ook de IUnrestrictedPermission interface implementeren.

De volgende CodeAccessPermission leden moeten worden overschreven: Copy(), Intersect(IPermission), IsSubsetOf(IPermission), ToXml(), , , en Union(IPermission)FromXml(SecurityElement).

U moet ook een constructor definiëren die een PermissionState als enige parameter gebruikt.

U moet het SerializableAttribute kenmerk toepassen op een klasse die wordt overgenomen van CodeAccessPermission.

Constructors

Name Description
CodeAccessPermission()

Initialiseert een nieuw exemplaar van de CodeAccessPermission klasse.

Methoden

Name Description
Assert()

Declareert dat de aanroepende code toegang heeft tot de resource die wordt beveiligd door een machtigingsvraag via de code die deze methode aanroept, zelfs als bellers die hoger in de stack zijn, niet zijn gemachtigd om toegang te krijgen tot de resource. Met behulp van Assert() dit hulpprogramma kunt u beveiligingsproblemen maken.

Copy()

Wanneer deze wordt geïmplementeerd door een afgeleide klasse, wordt een identieke kopie van het huidige machtigingsobject gemaakt en geretourneerd.

Demand()

Dwingt een runtime af SecurityException als aan alle bellers hoger in de aanroepstack niet de machtiging is verleend die is opgegeven door het huidige exemplaar.

Deny()
Verouderd.

Hiermee voorkomt u dat bellers in de aanroepstack de code gebruiken die deze methode aanroept om toegang te krijgen tot de resource die is opgegeven door het huidige exemplaar.

Equals(Object)

Bepaalt of het opgegeven CodeAccessPermission object gelijk is aan de huidige CodeAccessPermission.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
FromXml(SecurityElement)

Wanneer deze wordt overschreven in een afgeleide klasse, reconstrueert u een beveiligingsobject met een opgegeven status van een XML-codering.

GetHashCode()

Hiermee haalt u een hashcode op voor het CodeAccessPermission object dat geschikt is voor gebruik in hash-algoritmen en gegevensstructuren, zoals een hash-tabel.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
Intersect(IPermission)

Wanneer deze wordt geïmplementeerd door een afgeleide klasse, maakt en retourneert u een machtiging die het snijpunt is van de huidige machtiging en de opgegeven machtiging.

IsSubsetOf(IPermission)

Wanneer deze wordt geïmplementeerd door een afgeleide klasse, bepaalt u of de huidige machtiging een subset van de opgegeven machtiging is.

MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
PermitOnly()

Hiermee voorkomt u dat bellers in de aanroepstack de code gebruiken die deze methode aanroept om toegang te krijgen tot alle resources, met uitzondering van de resource die is opgegeven door het huidige exemplaar.

RevertAll()

Zorgt ervoor dat alle eerdere onderdrukkingen voor het huidige frame worden verwijderd en niet meer van kracht zijn.

RevertAssert()

Zorgt ervoor dat een vorige Assert() voor het huidige frame wordt verwijderd en niet meer van kracht is.

RevertDeny()
Verouderd.

Zorgt ervoor dat een vorige Deny() voor het huidige frame wordt verwijderd en niet meer van kracht is.

RevertPermitOnly()

Zorgt ervoor dat een vorige PermitOnly() voor het huidige frame wordt verwijderd en niet meer van kracht is.

ToString()

Hiermee maakt en retourneert u een tekenreeksweergave van het huidige machtigingsobject.

ToXml()

Wanneer deze wordt overschreven in een afgeleide klasse, maakt u een XML-codering van het beveiligingsobject en de huidige status.

Union(IPermission)

Wanneer deze wordt overschreven in een afgeleide klasse, maakt u een machtiging die de samenvoeging is van de huidige machtiging en de opgegeven machtiging.

Van toepassing op