Espero que alguien pueda corregirme cuando me equivoco al intentar crear un enlace simbólico en Windows 8.1 sin tener que ejecutar cmd.exe como administrador.
Cada vez que intento crear un enlace simbólico desde un símbolo del sistema normal, obtengo la respuesta de permisos habitual ...
C:\Users\MyUser>mklink symlink.txt mytextfile.txt
You do not have sufficient privilege to perform this operation.
... y funciona desde un símbolo del sistema de administración (como se esperaba) ...
C:\Users\MyUser>mklink symlink.txt mytextfile.txt
symbolic link created for symlink.txt <<===>> mytextfile.txt
Sin embargo, no parece que ninguna de las soluciones habituales funcione en Windows 8.1 (al menos, las soluciones que pude encontrar).
He intentado seguir la respuesta a ¿Cómo creo un enlace en Windows 7 Home Premium como usuario habitual? , pero parece no tener efecto.
También tengo UAC configurado en su nivel más bajo.
¿Hay algo más que me estoy perdiendo?
windows
command-line
windows-8.1
symbolic-link
Karl Nicoll
fuente
fuente
Respuestas:
Falta el privilegio en el token "filtrado"
Deshabilite UAC. O con UAC habilitado: después de habilitar
SECreateSymbolicLinkPrivilege
intente con una cuenta que no sea de administrador .Explicación
Es la captura 17. De cómo leí la documentación de MS.
Si tiene un grupo de administración conocido en la lista negra en su cuenta de usuario, se crea un segundo token no elevado.
Lo relevante
SeCreateSymbolicLinkPrivilege
se filtra cuando el token no elevado se genera a partir del token elevado.Desde MSDN: Aislamiento de privilegios de interfaz de usuario (UIPI) :
Entonces, la solución es desactivar por completo la segunda generación de tokens. Eliminando todos los grupos mencionados de su cuenta o deshabilitando completamente UAC.
(Descargo de responsabilidad: Paul Betts hizo el trabajo. Acabo de agregar algunos detalles. Vea su respuesta aquí: /programming/15320550/secreatesymboliclinkprivilege-ignored-on-windows-8 )
fuente