Compartilhar via


Função FwpmEngineGetSecurityInfo0 (fwpmu.h)

A função FwpmEngineGetSecurityInfo0 recupera uma cópia do descritor de segurança para o mecanismo de filtro.

Sintaxe

DWORD FwpmEngineGetSecurityInfo0(
  [in]            HANDLE               engineHandle,
  [in]            SECURITY_INFORMATION securityInfo,
  [out, optional] PSID                 *sidOwner,
  [out, optional] PSID                 *sidGroup,
  [out, optional] PACL                 *dacl,
  [out, optional] PACL                 *sacl,
  [out]           PSECURITY_DESCRIPTOR *securityDescriptor
);

Parâmetros

[in] engineHandle

Tipo: HANDLE

Manipule para uma sessão aberta para o mecanismo de filtro. Chame FwpmEngineOpen0 para abrir uma sessão para o mecanismo de filtro.

[in] securityInfo

Tipo: SECURITY_INFORMATION

O tipo de informações de segurança a serem recuperadas.

[out, optional] sidOwner

Tipo: PSID*

O SID (identificador de segurança) proprietário no descritor de segurança retornado.

[out, optional] sidGroup

Tipo: PSID*

O SID (identificador de segurança do grupo primário) no descritor de segurança retornado.

[out, optional] dacl

Tipo: PACL*

A DACL (lista de controle de acesso discricionário) no descritor de segurança retornado.

[out, optional] sacl

Tipo: PACL*

A SACL (lista de controle de acesso do sistema) no descritor de segurança retornado.

[out] securityDescriptor

Tipo: PSECURITY_DESCRIPTOR*

O descritor de segurança retornado.

Valor retornado

Tipo: DWORD

Valor/código retornado Descrição
ERROR_SUCCESS
0
O descritor de segurança foi recuperado com êxito.
código de erro FWP_E_*
0x80320001 — 0x80320039
Um erro específico da Plataforma de Filtragem do Windows (WFP). Consulte Códigos de erro WFP para obter detalhes.
código de erro RPC_*
0x80010001 — 0x80010122
Falha ao se comunicar com o mecanismo de firewall remoto ou local.

Comentários

O parâmetro securityDescriptor retornado deve ser liberado por meio de uma chamada para FwpmFreeMemory0. Os outros quatro parâmetros retornados (opcionais) não devem ser liberados, pois apontam para endereços dentro do parâmetro securityDescriptor .

Essa função se comporta como a função Padrão Win32 GetSecurityInfo . O chamador precisa dos mesmos direitos de acesso padrão descritos no tópico de referência GetSecurityInfo .

FwpmEngineGetSecurityInfo0 é uma implementação específica de FwpmEngineGetSecurityInfo. Consulte Nomes de Version-Independent WFP e Direcionamento de versões específicas do Windows para obter mais informações.

Exemplos

O exemplo C++ a seguir ilustra a inicialização de um objeto descritor de segurança usando FwpmEngineGetSecurityInfo0.

#include <windows.h>
#include <fwpmu.h>
#include <stdio.h>

#pragma comment(lib, "Fwpuclnt.lib")

void main()
{
    HANDLE engineHandle = NULL;
    DWORD  result = ERROR_SUCCESS;

    PSECURITY_DESCRIPTOR securityDescriptor;
    SECURITY_INFORMATION securityInfo = OWNER_SECURITY_INFORMATION;

    // Several functions that use the SECURITY_DESCRIPTOR structure require that this 
    // structure be aligned on a valid pointer boundary in memory. These boundaries 
    // vary depending on the type of processor used. 

    securityDescriptor = (PSECURITY_DESCRIPTOR) malloc(sizeof(SECURITY_DESCRIPTOR));

    result = FwpmEngineOpen0( NULL, RPC_C_AUTHN_WINNT, NULL, NULL, &engineHandle );
    if (result != ERROR_SUCCESS)
    {
        printf("FwpmEngineOpen0 failed.\n");
        return;
    }
    
    result = FwpmEngineGetSecurityInfo0(
                 engineHandle, 
                 securityInfo,
                 NULL,
                 NULL,
                 NULL,
                 NULL,
                 &securityDescriptor);

    if (result != ERROR_SUCCESS)
    {
        printf("FwpmEngineGetSecurityInfo0 failed.\n");
        return;
    }

    return;
}

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho fwpmu.h
Biblioteca Fwpuclnt.lib
DLL Fwpuclnt.dll

Confira também

FwpmEngineSetSecurityInfo0