Compartir a través de


Función WldpCanExecuteBuffer (wldp.h)

Consulta si la directiva de ejecución permite la ejecución del código en el búfer proporcionado.

Sintaxis

HRESULT WldpCanExecuteBuffer(
  [in]           REFGUID                           host,
  [in]           WLDP_EXECUTION_EVALUATION_OPTIONS options,
  [in]           const BYTE                        *buffer,
  [in]           ULONG                             bufferSize,
  [in, optional] PCWSTR                            auditInfo,
  [out]          WLDP_EXECUTION_POLICY             *result
);

Parámetros

[in] host

GUID que especifica el programa de llamada. Para obtener la lista de GUID predefinidos que se pueden usar para este parámetro, consulte GUID de host de WLDP. En el caso de los hosts para los que no se define un valor específico, use guid WLDP_HOST_GUID_OTHER.

[in] options

Valor de la WLDP_EXECUTION_EVALUATION_OPTIONS especificar opciones para la solicitud de autorización de ejecución.

[in] buffer

Búfer que contiene el código de script que se va a validar.

Importante

Los búferes pasados a WldpCanExecuteBuffer deben ser de solo lectura y el autor de la llamada no debe almacenar en caché la autorización de seguridad en un búfer específico. Estas medidas son necesarias para evitar vulnerabilidades toc/TOU que podrían subvertir la directiva de cumplimiento de scripts.

[in] bufferSize

Tamaño del búfer, en bytes.

[in, optional] auditInfo

Cadena que debe incluir información contextual relevante para que el autor de la llamada use en la depuración. Si se produce un error en una solicitud de autorización, esta cadena se registrará en el registro de eventos, en "Applocker/MSI y Scripts/Operational". Los autores de llamadas deben tener en cuenta que, aunque AuditInfo no tiene un tamaño limitado, la cadena debe tener un tamaño inferior a 4K bytes, ya que se colocará en el registro de eventos.

[out] result

Recibe un puntero a un valor de la enumeración WLDP_EXECUTION_POLICY , lo que indica el resultado de la directiva de ejecución de la consulta.

Valor devuelto

Devuelve S_OK si se ejecuta correctamente y un código de error de lo contrario.

Comentarios

Este método se proporciona como reemplazo de WldpGetLockdownPolicy. Esta interfaz se diferencia de WldpGetLockdownPolicy de las siguientes maneras:

  • Anima a los autores de llamadas a asegurarse de que el asunto (archivo, búfer o secuencia) pasa la directiva de ejecución del sistema operativo.
  • Permite que las aplicaciones de llamada proporcionen información de auditoría adicional con fines de diagnóstico.
  • Permite la verificación de búferes y secuencias de código.
  • Simplifica el patrón de llamada.
  • Admite directivas de ejecución específicas como, por ejemplo, el modo interactivo en cmd o PowerShell.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 11, compilación 22621
Servidor mínimo compatible Windows 11, compilación 22621
Encabezado wldp.h
Library wldp.lib
Archivo DLL wldp.dll

Consulte también