EventLogPermission Class

Definition

Controls code access permissions for event logging.

public ref class EventLogPermission sealed : System::Security::Permissions::ResourcePermissionBase
[System.Serializable]
public sealed class EventLogPermission : System.Security.Permissions.ResourcePermissionBase
type EventLogPermission = class
    inherit ResourcePermissionBase
Public NotInheritable Class EventLogPermission
Inherits ResourcePermissionBase
Inheritance
Attributes

Remarks

Do not grant EventLogPermission to partially trusted code. The ability to read and write the event log enables code to perform actions such as issuing event log messages in the name of another application.

Note

If the event source that is specified by the EventLog.Source property for the event log does not exist, a new event source is created. To create an event source in Windows Vista and later versions of Windows, or Windows Server 2003, you must have administrative privileges.

The reason for this requirement is that all event logs, including security, must be searched to determine whether the event source is unique. Starting with Windows Vista, users do not have permission to access the security log; therefore, a SecurityException is thrown.

Starting with Windows Vista, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that accesses the security log, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator.

Constructors

EventLogPermission()

Initializes a new instance of the EventLogPermission class.

EventLogPermission(EventLogPermissionAccess, String)

Initializes a new instance of the EventLogPermission class with the specified access levels and the name of the computer to use.

EventLogPermission(EventLogPermissionEntry[])

Initializes a new instance of the EventLogPermission class with the specified permission entries.

EventLogPermission(PermissionState)

Initializes a new instance of the EventLogPermission class with the specified permission state.

Fields

Any

Specifies the character to be used to represent the any wildcard character.

(Inherited from ResourcePermissionBase)
Local

Specifies the character to be used to represent a local reference.

(Inherited from ResourcePermissionBase)

Properties

PermissionAccessType

Gets or sets an enumeration value that describes the types of access that you are giving the resource.

(Inherited from ResourcePermissionBase)
PermissionEntries

Gets the collection of permission entries for this permissions request.

TagNames

Gets or sets an array of strings that identify the resource you are protecting.

(Inherited from ResourcePermissionBase)

Methods

AddPermissionAccess(ResourcePermissionBaseEntry)

Adds a permission entry to the permission.

(Inherited from ResourcePermissionBase)
Assert()

Declares that the calling code can access the resource protected by a permission demand through the code that calls this method, even if callers higher in the stack have not been granted permission to access the resource. Using Assert() can create security issues.

(Inherited from CodeAccessPermission)
Clear()

Clears the permission of the added permission entries.

(Inherited from ResourcePermissionBase)
Copy()

Creates and returns an identical copy of the current permission object.

(Inherited from ResourcePermissionBase)
Demand()

Forces a SecurityException at run time if all callers higher in the call stack have not been granted the permission specified by the current instance.

(Inherited from CodeAccessPermission)
Deny()

Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance.

(Inherited from CodeAccessPermission)
Equals(Object)

Determines whether the specified CodeAccessPermission object is equal to the current CodeAccessPermission.

(Inherited from CodeAccessPermission)
FromXml(SecurityElement)

Reconstructs a security object with a specified state from an XML encoding.

(Inherited from ResourcePermissionBase)
GetHashCode()

Gets a hash code for the CodeAccessPermission object that is suitable for use in hashing algorithms and data structures such as a hash table.

(Inherited from CodeAccessPermission)
GetPermissionEntries()

Returns an array of the ResourcePermissionBaseEntry objects added to this permission.

(Inherited from ResourcePermissionBase)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
Intersect(IPermission)

Creates and returns a permission object that is the intersection of the current permission object and a target permission object.

(Inherited from ResourcePermissionBase)
IsSubsetOf(IPermission)

Determines whether the current permission object is a subset of the specified permission.

(Inherited from ResourcePermissionBase)
IsUnrestricted()

Gets a value indicating whether the permission is unrestricted.

(Inherited from ResourcePermissionBase)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
PermitOnly()

Prevents callers higher in the call stack from using the code that calls this method to access all resources except for the resource specified by the current instance.

(Inherited from CodeAccessPermission)
RemovePermissionAccess(ResourcePermissionBaseEntry)

Removes a permission entry from the permission.

(Inherited from ResourcePermissionBase)
ToString()

Creates and returns a string representation of the current permission object.

(Inherited from CodeAccessPermission)
ToXml()

Creates and returns an XML encoding of the security object and its current state.

(Inherited from ResourcePermissionBase)
Union(IPermission)

Creates a permission object that combines the current permission object and the target permission object.

(Inherited from ResourcePermissionBase)

Explicit Interface Implementations

IPermission.Demand() (Inherited from CodeAccessPermission)
IStackWalk.Assert() (Inherited from CodeAccessPermission)
IStackWalk.Demand() (Inherited from CodeAccessPermission)
IStackWalk.Deny() (Inherited from CodeAccessPermission)
IStackWalk.PermitOnly() (Inherited from CodeAccessPermission)

Applies to

See also