SI_OBJECT_INFO estructura (aclui.h)

El método ISecurityInformation::GetObjectInformation usa la estructura SI_OBJECT_INFO para especificar la información utilizada para inicializar el editor de control de acceso.

Sintaxis

typedef struct _SI_OBJECT_INFO {
  DWORD     dwFlags;
  HINSTANCE hInstance;
  LPWSTR    pszServerName;
  LPWSTR    pszObjectName;
  LPWSTR    pszPageTitle;
  GUID      guidObjectType;
} SI_OBJECT_INFO, *PSI_OBJECT_INFO;

Miembros

dwFlags

Conjunto de marcas de bits que determinan las opciones de edición disponibles para el usuario. Este miembro puede ser una combinación de los valores siguientes.

Valor Significado
SI_ADVANCED
0x00000010L
Si se establece esta marca, el botón Opciones avanzadas se muestra en la página de propiedades de seguridad básica. Si el usuario hace clic en este botón, el sistema muestra una hoja de propiedades de seguridad avanzada que habilita la edición avanzada de la lista de control de acceso discrecional (DACL) del objeto.

Combine esta marca con las marcas de SI_EDIT_AUDITS, SI_EDIT_OWNER y SI_EDIT_PROPERTIES para habilitar la edición de las entradas de control de acceso (ACE) específicas de SACL, propietario y objeto del objeto.

SI_AUDITS_ELEVATION_REQUIRED
0x020000000L
Si se establece esta marca, se muestra un escudo en el botón Editar de las páginas de auditoría avanzadas. En el caso de los objetos NTFS, esta marca se solicita cuando el usuario no tiene acceso READ_CONTROL o ACCESS_SYSTEM_SECURITY .

Windows Server 2003 y Windows XP: Esta marca no se admite.

SI_CONTAINER
0x00000004L
Indica que el objeto es un contenedor. Si se establece esta marca, el editor de control de acceso habilita los controles pertinentes para la herencia de permisos en objetos secundarios.
SI_DISABLE_DENY_ACE
0x800000000L
Si se establece esta marca, el sistema deshabilita la denegación de una ACE. Los clientes del editor de control de acceso deben implementar la interfaz ISecurityInformation4 para establecer esta marca.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Esta marca no se admite.

SI_EDIT_ALL
Combina las marcas SI_EDIT_PERMS, SI_EDIT_OWNER y SI_EDIT_AUDITS.
SI_EDIT_AUDITS
0x00000002L
Si se establece esta marca y el usuario hace clic en el botón Avanzadas , el sistema muestra una hoja de propiedades de seguridad avanzada que incluye una página de propiedades Auditoría para editar la SACL del objeto. Para mostrar el botón Opciones avanzadas , establezca la marca SI_ADVANCED.
SI_EDIT_EFFECTIVE
0x00020000L
Si se establece esta marca, se muestra la página Permisos efectivos . Esta marca se omite si el objeto ISecurityInformation que inicializó el editor de control de acceso no implementa la interfaz IEffectivePermission .
SI_EDIT_OWNER
0x00000001L
Si se establece esta marca y el usuario hace clic en el botón Avanzadas , el sistema muestra una hoja de propiedades de seguridad avanzada que incluye una página de propiedades Owner para cambiar el propietario del objeto. Para mostrar el botón Opciones avanzadas , establezca la marca SI_ADVANCED.
SI_EDIT_PERMS
0x00000000L
Este es el valor predeterminado. La página de propiedades de seguridad básica siempre muestra los controles para la edición básica de la DACL del objeto. Para deshabilitar estos controles, establezca la marca SI_READONLY.
SI_EDIT_PROPERTIES
0x00000080L
Si se establece esta marca, el sistema habilita los controles para editar ASE que se aplican a los conjuntos de propiedades y propiedades del objeto. Estos controles solo están disponibles en la hoja de propiedades que se muestra cuando el usuario hace clic en el botón Avanzadas .
SI_ENABLE_CENTRAL_POLICY
0x400000000L
Si se establece esta marca, el sistema habilita los atributos de edición. Los clientes del editor de control de acceso deben implementar la interfaz ISecurityInformation4 para establecer esta marca.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Esta marca no se admite.

SI_ENABLE_EDIT_ATTRIBUTE_CONDITION
0x200000000L
Si se establece esta marca, el sistema habilita los atributos de edición. Los clientes del editor de control de acceso deben implementar la interfaz ISecurityInformation4 para establecer esta marca.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Esta marca no se admite.

SI_MAY_WRITE
0x100000000L
Indica que el editor de control de acceso no puede leer la DACL, pero puede escribir en la DACL. Si una llamada al método ISecurityInformation::GetSecurity devuelve AccessDenied, el usuario puede intentar agregar una nueva ACE y se muestra una advertencia más adecuada.
SI_NO_ACL_PROTECT
0x00000200L
Si se establece esta marca, el editor de control de acceso oculta la casilla que permite que las ACE herederas se propaguen desde el objeto primario a este objeto. Si no se establece esta marca, la casilla está visible.

La casilla está desactivada si la marca SE_DACL_PROTECTED está establecida en el descriptor de seguridad del objeto. En este caso, la DACL del objeto está protegida de ser modificada por las ACE herederas.

Si el usuario desactiva la casilla, se eliminan o convierten las ACE heredadas en el descriptor de seguridad o se convierten en AEC noheridas. Antes de continuar con esta conversión, el sistema muestra un cuadro de mensaje de advertencia para confirmar el cambio.

SI_NO_ADDITIONAL_PERMISSION
0x00200000L
Si se establece esta marca, el editor de control de acceso oculta la pestaña Permisos especiales de la página Configuración de seguridad avanzada .
SI_NO_TREE_APPLY
0x00000400L
Si se establece esta marca, el editor de control de acceso oculta la casilla que controla la marca NO_PROPAGATE_INHERIT_ACE. Esta marca solo es relevante cuando también se establece la marca SI_ADVANCED.
SI_OBJECT_GUID
0x00010000L
Cuando se establece, indica que el miembro guidObjectType de la estructura SI_OBJECT_INFO es válido. Esto se establece en comparaciones con ASE específicos del objeto para determinar si la ACE se aplica al objeto actual.
SI_OWNER_ELEVATION_REQUIRED
0x04000000L
Si se establece esta marca, se muestra un escudo en el botón Editar de la página Propietario avanzada. En el caso de los objetos NTFS, esta marca se solicita cuando el usuario no tiene WRITE_OWNER acceso. Esta marca solo es válida si se solicita la página del propietario.

Windows Server 2003 y Windows XP: Esta marca no se admite.

SI_OWNER_READONLY
0x00000040L
Si se establece esta marca, el usuario no puede cambiar el propietario del objeto. Establezca esta marca si se establece SI_EDIT_OWNER, pero el usuario no tiene permiso para cambiar el propietario.
SI_OWNER_RECURSE
0x00000100L
Combine esta marca con SI_CONTAINER para mostrar una casilla en la página del propietario que indica si el usuario piensa que el nuevo propietario se aplique a todos los objetos secundarios, así como al objeto actual. El editor de control de acceso no realiza la recursividad; la recursividad debe realizarse mediante la aplicación en ISecurityInformation::SetSecurity.
SI_PAGE_TITLE
0x00000800L
Si se establece esta marca, el miembro pszPageTitle se usa como título de la página de propiedades de seguridad básica. De lo contrario, se usa un título predeterminado.
SI_PERMS_ELEVATION_REQUIRED
0x01000000L
Si se establece esta marca, se muestra una imagen de un escudo en el botón Editar de las páginas permisos simples y avanzadas. En el caso de los objetos NTFS, esta marca se solicita cuando el usuario no tiene acceso READ_CONTROL o WRITE_DAC .

Windows Server 2003 y Windows XP: Esta marca no se admite.

SI_READONLY
0x00000008L
Si se establece esta marca, el editor muestra la información de seguridad del objeto, pero los controles para editar la información están deshabilitados.

Esta marca no se puede combinar con la marca SI_VIEW_ONLY .

SI_RESET
0x00000020L
Si se establece esta marca, se muestra el botón Predeterminado . Si el usuario hace clic en este botón, el editor de control de acceso llama al método ISecurityInformation::GetSecurity para recuperar un descriptor de seguridad predeterminado definido por la aplicación. El editor de control de acceso usa este descriptor de seguridad para reinicializar la hoja de propiedades y el usuario puede aplicar el cambio o cancelar.
SI_RESET_DACL
0x00040000L
Cuando se establece, esta marca muestra el botón Restablecer valores predeterminados en la página Permisos .
SI_RESET_DACL_TREE
0x00004000L
Cuando se establece, esta marca muestra la casilla Restablecer permisos en todos los objetos secundarios y habilitar la propagación de permisos heredados en la página Permisos de la ventana Configuración de Access Control. Si esta casilla está activada cuando el usuario hace clic en el botón Aplicar , se realiza una operación OR bit a bit en el parámetro SecurityInformation de ISecurityInformation::SetSecurity con SI_RESET_DACL_TREE. Esta función no restablece los permisos y habilita la propagación de permisos heredados; la implementación de ISecurityInformation debe hacerlo.
SI_RESET_OWNER
0x00100000L
Cuando se establece, esta marca muestra el botón Restablecer valores predeterminados en la página Propietario .
SI_RESET_SACL
0x00080000L
Cuando se establece, esta marca muestra el botón Restablecer valores predeterminados en la página Auditoría .
SI_RESET_SACL_TREE
0x00008000L
Cuando se establece, esta marca muestra la casilla Restablecer entradas de auditoría en todos los objetos secundarios y habilita la propagación de las entradas de auditoría herederas en la página Auditoría de la ventana Configuración de Access Control. Si esta casilla está activada cuando el usuario hace clic en el botón Aplicar , se realiza una operación OR bit a bit en el parámetro SecurityInformation de ISecurityInformation::SetSecurity con SI_RESET_SACL_TREE. Esta función no restablece los permisos y habilita la propagación de permisos heredados; la implementación de ISecurityInformation debe hacerlo.
SI_SCOPE_ELEVATION_REQUIRED
0x080000000L
Si se establece esta marca, se muestra una imagen de un escudo en el botón Cambiar del atributo Scope. En el caso de los objetos NTFS, esta marca se solicita cuando el usuario no tiene acceso READ_CONTROL o WRITE_DAC. Los clientes del editor de control de acceso deben implementar la interfaz ISecurityInformation4 para establecer esta marca.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Esta marca no se admite.

SI_SERVER_IS_DC
0x00001000L
Establezca esta marca si se sabe que el equipo pszServerName es un controlador de dominio. Si se establece esta marca, el nombre de dominio se incluye en la lista de ámbitos del cuadro de diálogo Agregar usuarios y grupos . De lo contrario, se usa el equipo pszServerName para determinar la lista de ámbitos del cuadro de diálogo.
SI_VIEW_ONLY
0x00400000L
El cliente del editor de control de acceso establece esta marca para mostrar las versiones de solo lectura de los cuadros de diálogo del editor de control de acceso. Estas versiones de los cuadros de diálogo no permiten la edición de los permisos del objeto asociado. Los clientes del editor de control de acceso deben implementar la interfaz ISecurityInformation3 para establecer esta marca.

Esta marca no se puede combinar con la marca SI_READONLY .

Windows Server 2003 y Windows XP: Esta marca no se admite.

hInstance

Identifica un módulo que contiene recursos de cadena que se van a usar en la hoja de propiedades. Los métodos ISecurityInformation::GetAccessRights e ISecurityInformation::GetInheritTypes pueden especificar identificadores de recursos de cadena para los nombres para mostrar.

pszServerName

Puntero a una cadena Unicode terminada en null que asigna un nombre al equipo en el que buscar nombres de cuenta y SID. Este valor puede ser NULL para especificar el equipo local. El editor de control de acceso no libera este puntero.

pszObjectName

Puntero a una cadena Unicode terminada en null que asigna un nombre al objeto que se está editando. Este nombre aparece en el título de la hoja de propiedades de seguridad avanzada y los cuadros de mensaje de error mostrados por el editor de control de acceso. El editor de control de acceso no libera este puntero.

pszPageTitle

Puntero a una cadena Unicode terminada en null que se usa como título de la página de propiedades de seguridad básica. Este miembro se omite a menos que la marca SI_PAGE_TITLE esté establecida en dwFlags. Si no se proporciona el título de página, se usa un título predeterminado. El editor de control de acceso no libera este puntero.

guidObjectType

GUID del objeto . Este miembro se omite a menos que la marca de SI_OBJECT_GUID esté establecida en dwFlags.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado aclui.h

Consulte también

ISecurityInformation

ISecurityInformation::GetAccessRights

ISecurityInformation::GetInheritTypes

ISecurityInformation::GetObjectInformation

ISecurityInformation::GetSecurity

ISecurityInformation::SetSecurity