Editor de Access Control

El editor de control de acceso es un conjunto de hojas de propiedades y páginas de propiedades que permiten al usuario ver y modificar los componentes del descriptor de seguridad de un objeto. El editor consta de dos partes principales:

La función CreateSecurityPage crea la página de propiedades de seguridad básica. A continuación, puede usar la función PropertySheet o el mensaje PSM_ADDPAGE para agregar esta página a una hoja de propiedades.

Como alternativa, puede usar la función EditSecurity para mostrar una hoja de propiedades que contenga la página de propiedades de seguridad básica.

Para CreateSecurityPage y EditSecurity, el autor de la llamada debe pasar un puntero a una implementación de la interfaz ISecurityInformation . El editor de control de acceso llama a los métodos de esta interfaz para recuperar información de control de acceso sobre el objeto que se está editando y para volver a pasar la entrada del usuario a la aplicación. Los métodos ISecurityInformation tienen los siguientes propósitos:

  • Para inicializar las páginas de propiedades.

    La implementación del método GetObjectInformation pasa una estructura de SI_OBJECT_INFO al editor. Esta estructura especifica las páginas de propiedades que desea que el editor muestre y otra información que determine las opciones de edición disponibles para el usuario.

  • Para proporcionar información de seguridad sobre el objeto que se está editando.

    La implementación de GetSecurity pasa el descriptor de seguridad inicial del objeto al editor. Los métodos GetAccessRights y MapGeneric proporcionan información sobre los derechos de acceso del objeto. El método GetInheritTypes proporciona información sobre cómo los objetos secundarios pueden heredar los AEC del objeto.

  • Para volver a pasar la entrada del usuario a la aplicación.

    Cuando el usuario hace clic en Ok o Apply, el editor llama al método SetSecurity para devolver un descriptor de seguridad que contiene los cambios del usuario.