Platform SDK: Access Control

EditSecurity

The EditSecurity function displays a property sheet that contains a basic security property page. This property page enables the user to view and edit the access rights allowed or denied by the ACEs in an object's DACL.

BOOL EditSecurity(
  HWND hwndOwner       // handle to the owner window
  LPSECURITYINFO psi   // an ISecurityInformation pointer
);

Parameters

hwndOwner
[in] Handle to the window that owns the property sheet. This parameter can be NULL.
psi
[in] Pointer to your implementation of the ISecurityInformation interface. The system calls the interface methods to retrieve information about the object being edited and to return the user's input.

Return Values

If the function succeeds, the return value is a nonzero value.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

The EditSecurity function calls the CreateSecurityPage function to create a basic security property page.

During the property page initialization, the system calls the ISecurityInformation::GetSecurity and ISecurityInformation::SetSecurity methods to determine whether the user has permission to edit the object's security descriptor. The system displays an error message if the user does not have permission.

The basic security property page can include an Advanced button for displaying the advanced security property sheet. This advanced security property sheet can contain three additional property pages that enable the user to view and edit the object's DACL, SACL, and owner.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Header: Declared in Aclui.h.
  Library: Use Aclui.lib.

See Also

Access Control Editor Overview, Access Control Editor Functions, CreateSecurityPage, ISecurityInformation