Con el fin de instalar una nueva página de propiedades en el Active Directory SnapIn, tengo que escribir a la siguiente clave del registro de W2K8 R2 (as documented by Microsoft)Cómo escribir en una clave de registro propio por TrustedInstaller
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ MMC \ SnapIns {E355E538-1C2E-11D0-8C37-00C04FD8FE93} \ NodeTypes
Esta clave es la propia por un usuario especial llamado TrustedInstaller. Encontré muchas cosas en NET por ahí.
Por el momento aquí es la forma en que funciona haciendo lo siguiente (el usuario es miembro del grupo de administradores):
- Doy al usuario el privilegio de tomar posesión.
- El usuario tomar posesión
- El usuario escribir el registro
- el usuario otorga la propiedad al grupo de administradores.
Mi proyecto está completo escrito en C# y hay dos cosas que no me gustan en la forma en que lo estoy haciendo.
- Uso InteropServices para llamar a Win32 AdjustTokenPrivileges API. ¿Alguien sabe una manera de hacerlo en C# puro?
- Al final TrustedInstaller ya no es el propietario de la clave, y no puedo darle la propiedad, él mantiene el control total, pero no quiero que mi servidor se clasifique como dañado después de la instalación de mi complemento -en.
Así que mi pregunta es: ¿Extraño algo, hay una forma documentada de modificar esa clave que está documentada como modificable?
Existe un Stack overflow question existente sobre eso, la respuesta dice que la propiedad TrustedInstaller, significa que la clave es parte de la instalación del sistema y no de la instalación de la aplicación. Para mí, si Microsoft documenta cómo modificar una clave, es la instalación de la aplicación.
Gracias de antemano.
+1, SeRestorePrivilege es una joya. – ongle
¿Hay alguna posibilidad de que tengas una publicación de blog o código de muestra? He estado tratando de hacer que esto funcione durante horas. – Laoujin
@Laoujin Finalmente coloqué el código en Gist, espero que ayude. – JPBlanc