Compartilhar via


Função WldpCanExecuteBuffer (wldp.h)

Consulta se a política de execução permite a execução do código no buffer fornecido.

Sintaxe

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

Um GUID que especifica o programa de chamada. Para obter a lista de GUIDs predefinidos que podem ser usados para esse parâmetro, consulte GUIDs de host WLDP. Para hosts para os quais um valor específico não está definido, use GUID WLDP_HOST_GUID_OTHER.

[in] options

Um valor do WLDP_EXECUTION_EVALUATION_OPTIONS especificando opções para a solicitação de autorização de execução.

[in] buffer

O buffer que contém o código de script a ser validado.

Importante

Os buffers passados para WldpCanExecuteBuffer devem ser somente leitura e o chamador não deve armazenar em cache a autorização de segurança em um buffer específico. Essas medidas são necessárias para evitar vulnerabilidades de TOC/TOU que possam subverter a política de imposição de script.

[in] bufferSize

O tamanho do buffer, em bytes.

[in, optional] auditInfo

Uma cadeia de caracteres que deve incluir informações contextuais relevantes para o chamador usar na depuração. Se uma solicitação de autorização falhar, essa cadeia de caracteres será registrada no log de eventos, em "Applocker/MSI e Scripts/Operacional". Os chamadores devem observar que, embora o AuditInfo não seja limitado por tamanho, a cadeia de caracteres deve ter menos de 4K bytes de tamanho, pois ela será colocada no log de eventos.

[out] result

Recebe um ponteiro para um valor da enumeração WLDP_EXECUTION_POLICY , indicando o resultado da política de execução da consulta.

Retornar valor

Retorna S_OK com êxito e um código de falha, caso contrário.

Comentários

Esse método é fornecido como uma substituição para WldpGetLockdownPolicy. Essa interface é diferenciada de WldpGetLockdownPolicy das seguintes maneiras:

  • Incentiva os chamadores a garantir que o assunto (arquivo, buffer ou fluxo) passe pela política de execução do sistema operacional.
  • Permite que os aplicativos de chamada forneçam informações adicionais de auditoria para fins de diagnóstico.
  • Permite a verificação de buffers e fluxos de código.
  • Simplifica o padrão de chamada.
  • Dá suporte a políticas de execução refinadas, como, por exemplo, modo interativo no cmd ou powershell

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 11, Build 22621
Servidor mínimo com suporte Windows 11, Build 22621
Cabeçalho wldp.h
Biblioteca wldp.lib
DLL wldp.dll

Confira também