Pregunta El comando Dir no funciona en una acción de UNC


Tenemos un proceso que se ejecuta en SQL Server y que ejecuta un comando DIR en la red local utilizando una ruta UNC para verificar que los archivos generados por otro sistema estén todos allí, como parte de un informe de auditoría.

Hasta esta mañana todo estuvo bien y elegante, no tuvimos problemas.

Anoche, los técnicos de TI reforzaron algunos permisos en los directorios de destino para mayor seguridad.

Ahora un dir \\server\shared\dir_name falla con un Acceso denegado error.

Podemos ejecutar este comando contra la unidad local o las rutas UNC de red alternativa sin problemas.

Tenemos el mismo problema si ejecutamos desde SQL Server usando xp_cmdShell o desde el símbolo del sistema (después de iniciar sesión en el servidor con la cuenta de SQL Server).

Cuando inicie sesión en el servidor con la cuenta en cuestión, es posible navegar por la red, por lo que los permisos de Explorer están bien

Por lo tanto, no está relacionado con el servidor SQL, ni está relacionado con la cuenta del Agente SQL Server.

Es específico de los derechos de un directorio de red.

¡Tampoco podemos usar Dir contra ese recurso compartido de red de nuestras propias cuentas, a pesar de que estamos en un grupo de dominio que tiene Permisos Completos en el directorio!

Entonces, ¿qué está pasando aquí? ¿Es posible que de alguna manera el Dir comando ha sido bloqueado en ese único recurso compartido de directorio para el usuario del agente de SQL Server?


1


origen




Respuestas:


Resulta que funciona si mapeamos la unidad.

Extraño cambio a la red o directorio activo que significa que ahora no podemos usar las rutas UNC en un comando DIR, pero la respuesta fue asignar una letra de unidad a la red compartida y luego ejecutar el proceso ...


1



Estoy teniendo el mismo problema, sin relación con SQL Server. Sin embargo, su trabajo no es práctico en mi situación. Ojalá alguien respondiera con una solución para lo que debe cambiar en los permisos de compartir la red. - Wally