Pregunta

Tengo un objeto CSID que contiene un bien conocido por el sistema. Función de dominio llamado () Puedo ver que el dominio es "autoridad nt".

En MSDN, descubrí que el SID de este grupo es "S-1-5", por lo que intenté usar ConvertStringsIdToSID () para obtener un PSID para ese grupo, pero obtuve un error de que la estructura SID es incorrecta.

¿Hay alguna forma de obtener CSID para ese grupo? ¿Es posible?

¡Muchas gracias! :-)

¿Fue útil?

Solución

Necesitas usar AllocateAndInitializeSid() función para esto. Ver este ejemplo en msdn.

PSID psid;
SID_IDENTIFIER_AUTHORITY SIDAuth = SECURITY_NT_AUTHORITY;

if(! AllocateAndInitializeSid( &SIDAuth, 2,
                               SECURITY_BUILTIN_DOMAIN_RID,
                               DOMAIN_ALIAS_RID_ADMINS,
                               0, 0, 0, 0, 0, 0,
                               &psid) ) 
{
    printf( "AllocateAndInitializeSid Error %u\n", GetLastError() );
    return FALSE;
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top