Compartir a través de


Método ICspInformation::GetDefaultSecurityDescriptor (certenroll.h)

El método GetDefaultSecurityDescriptor recupera el descriptor de seguridad de clave privada predeterminado.

Sintaxis

HRESULT GetDefaultSecurityDescriptor(
  [in]  VARIANT_BOOL MachineContext,
  [out] BSTR         *pValue
);

Parámetros

[in] MachineContext

Variable VARIANT_BOOL que indica si se va a recuperar el descriptor de seguridad para el equipo o el usuario. Especifique VARIANT_TRUE para el equipo y VARIANT_FALSE para el usuario.

[out] pValue

Puntero a una variable BSTR que contiene el descriptor de seguridad.

Valor devuelto

Si la función se realiza correctamente, la función devuelve S_OK.

Si se produce un error en la función, devuelve un valor HRESULT que indica el error. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros. Para obtener una lista de códigos de error comunes, consulte Valores HRESULT comunes.

Código o valor devuelto Descripción
CERTSRV_E_PROPERTY_EMPTY
No se encontró el valor de la propiedad.
NTE_BAD_TYPE
El proveedor criptográfico no admite descriptores de seguridad.
NTE_NOT_FOUND
El proveedor criptográfico no admite descriptores de seguridad.
NTE_BAD_KEY_STATE
El proveedor criptográfico no admite descriptores de seguridad.

Comentarios

Para usar el descriptor de seguridad, debe llamar a la función ConvertStringSecurityDescriptorToSecurityDescriptor incluida con la API de autorización de Microsoft y especificar la cadena devuelta por el método GetDefaultSecurityDescriptor . La función devuelve un puntero a una estructura de SECURITY_DESCRIPTOR .

El descriptor de seguridad predeterminado se usa para definir el acceso a claves privadas para el equipo y el usuario de la siguiente manera:

  • De forma predeterminada, solo los administradores y servicios locales que se ejecutan en la cuenta localSystem pueden acceder a claves privadas asociadas a la cuenta de equipo.
  • Cuando un proveedor almacena la clave privada de un usuario en un archivo cifrado en el perfil de usuario, usa un descriptor de seguridad para establecer permisos de acceso en el archivo.

Este método recupera el descriptor de seguridad predeterminado que se asociará con el parámetro MachineContext especificado y el proveedor actual si se crea una nueva clave privada. Puede usar el descriptor predeterminado para crear un descriptor personalizado. Normalmente, los descriptores personalizados se crean cuando una clave privada asociada a un certificado de contexto de equipo debe usar un servicio que se ejecuta en una cuenta distinta de la cuenta LocalSystem.

Algunos proveedores criptográficos no admiten descriptores de seguridad. Algunos ejemplos son los proveedores de módulos de seguridad de hardware y tarjeta inteligente (HSM).

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado certenroll.h
Archivo DLL CertEnroll.dll

Consulte también

ICspInformation