Condividi tramite


Funzione CoAllowUnmarshalerCLSID (combaseapi.h)

Aggiunge un CLSID unmarshaler all'elenco consentito solo per il processo chiamante.

Sintassi

HRESULT CoAllowUnmarshalerCLSID(
  [in] REFCLSID clsid
);

Parametri

[in] clsid

CLSID del nonmarshaler da aggiungere all'elenco consentito per processo.

Valore restituito

Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Non chiamare la funzione CoAllowUnmarshalerCLSID fino a quando non è stata chiamata CoInitializeSecurity nel processo corrente.

La funzione CoAllowUnmarshalerCLSID fornisce un controllo più granulare sui criteri di nonmarshaling rispetto alle opzioni dei criteri. Se il processo applica criteri di nonmarshaling, l'effetto della funzione CoAllowUnmarshalerCLSID consiste nel rendere i criteri relativamente più deboli. Per questo motivo, chiamare CoAllowUnmarshalerCLSID solo quando l'impatto sulla sicurezza è ben compreso. In genere, questa operazione viene usata per facilitare l'applicazione di un'opzione di criteri di nonmarshaling più forte per la riduzione ampia della superficie di attacco fornita, quando un CLSID specifico non consentito da tale opzione è necessario a causa di altri vincoli.

Ad esempio, è opportuno chiamare la funzione CoAllowUnmarshalerCLSID quando un nonmarshaler è noto o ritiene che abbia una vulnerabilità, ma è necessaria da un'app. È inoltre opportuno chiamare CoAllowUnmarshalerCLSID se il nonmarshaler viene usato in più processi, ma solo come parte di una funzionalità non comune. Non usare la funzione CoAllowUnmarshalerCLSID come sostituzione per la protezione avanzata del nonmarshaler.

Requisiti

Requisito Valore
Client minimo supportato Windows 8
Server minimo supportato Windows Server 2012
Piattaforma di destinazione Windows
Intestazione combaseapi.h
Libreria Ole32.lib
DLL Ole32.dll

Vedi anche

GLOBALOPT_UNMARSHALING_POLICY_VALUES

IMarshalingStream