Función SaferComputeTokenFromLevel (winsafer.h)
La función SaferComputeTokenFromLevel restringe un token mediante restricciones especificadas por un SAFER_LEVEL_HANDLE.
Sintaxis
BOOL SaferComputeTokenFromLevel(
[in] SAFER_LEVEL_HANDLE LevelHandle,
[in, optional] HANDLE InAccessToken,
[out] PHANDLE OutAccessToken,
[in] DWORD dwFlags,
[in, out, optional] LPVOID lpReserved
);
Parámetros
[in] LevelHandle
SAFER_LEVEL_HANDLE que contiene las restricciones que se van a colocar en el token de entrada. No pase identificadores con un LevelId de SAFER_LEVELID_FULLYTRUSTED o SAFER_LEVELID_DISALLOWED a esta función. Esto se debe a que SAFER_LEVELID_FULLYTRUSTED no está restringido y SAFER_LEVELID_DISALLOWED no contiene un token.
[in, optional] InAccessToken
Token que se va a restringir. Si este parámetro es NULL, se usará el token del subproceso actual. Si el subproceso actual no contiene un token, se usa el token del proceso actual.
[out] OutAccessToken
Token restringido resultante.
[in] dwFlags
Especifica el comportamiento del método . El valor puede ser NULL o uno o varios de los valores siguientes combinados mediante una operación OR bit a bit.
Valor | Significado |
---|---|
|
Si el parámetro OutAccessToken no es más restrictivo que el parámetro InAccessToken , el parámetro OutAccessToken devuelve NULL. |
|
El token especificado por el parámetro InAccessToken se compara con el token que se crearía si se aplicaran las restricciones especificadas por el parámetro LevelHandle . El token restringido no se crea realmente.
En la salida, el valor del parámetro lpReserved especifica el resultado de la comparación. |
|
Si se establece esta marca, el sistema no comprueba las reglas de AppLocker ni aplica directivas de restricción de software. Para AppLocker, esta marca deshabilita las comprobaciones de las cuatro colecciones de reglas: Ejecutable, Windows Installer, Script y DLL.
Establezca esta marca al crear un programa de instalación que deba ejecutar archivos DLL extraídos durante la instalación. Se puede consultar un token para que exista esta marca mediante GetTokenInformation. Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: No se admite AppLocker. |
|
En la salida, el valor del parámetro lpReserved especifica el conjunto de marcas usadas para crear el token restringido. |
[in, out, optional] lpReserved
Si se establece la marca SAFER_TOKEN_COMPARE_ONLY , este parámetro, en la salida, especifica el resultado de la comparación de tokens. El valor de salida es un LPDWORD. Un valor de –1 indica que el token resultante tendría menos privilegios que el token especificado por el parámetro InAccessToken .
Si se establece la marca de SAFER_TOKEN_WANT_FLAGS y no se establece la marca de SAFER_TOKEN_COMPARE_ONLY , este parámetro es un valor LPDWORD que especifica las marcas usadas para crear el token restringido.
Valor devuelto
TRUE si la función se realiza correctamente; de lo contrario, FALSE. Para obtener información extendida, llame a GetLastError.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winsafer.h |
Library | Advapi32.lib |
Archivo DLL | Advapi32.dll |
Conjunto de API | ext-ms-win-advapi32-safer-l1-1-0 (introducido en Windows 8) |