SemaphoreRights Enumeration

 

Specifies the access control rights that can be applied to named system semaphore objects.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:   System.Security.AccessControl
Assembly:  System (in System.dll)

[FlagsAttribute]
[ComVisibleAttribute(false)]
public enum class SemaphoreRights

Member nameDescription
ChangePermissions

The right to change the security and audit rules associated with a named semaphore.

Delete

The right to delete a named semaphore.

FullControl

The right to exert full control over a named semaphore, and to modify its access rules and audit rules.

Modify

The right to release a named semaphore.

ReadPermissions

The right to open and copy the access rules and audit rules for a named semaphore.

Synchronize

The right to wait on a named semaphore.

TakeOwnership

The right to change the owner of a named semaphore.

Use the SemaphoreRights enumeration to specify access control rights when you create SemaphoreSecurity objects. To apply access rights to a named system semaphore, use SemaphoreSecurity objects with the Semaphore::Semaphore(Int32, Int32, String^, Boolean%, SemaphoreSecurity^) constructor and the Semaphore::SetAccessControl method.

For the numeric values of the underlying Windows access rights, see Synchronization Object Security and Access Rights (Windows) in the MSDN Library.

System_CAPS_noteNote

Security on synchronization objects is not supported for Windows 98 or Windows Millennium Edition.

The following code example demonstrates the use of SemaphoreRights values when creating and using SemaphoreAccessRule objects. The example creates a SemaphoreSecurity object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing AccessControlType::Allowrule.

System_CAPS_noteNote

This example does not attach the security object to an Semaphore object; see SemaphoreSecurity, Semaphore::GetAccessControl method, and Semaphore::SetAccessControl.

No code example is currently available or this language may not be supported.

.NET Framework
Available since 2.0
Return to top
Show: