Lecteurs mappés non visibles à partir de l'invite de commandes et du planificateur de tâches élevés

Lorsque vous essayez d'accéder à un lecteur réseau mappé à partir de l'invite de commandes élevée ou admin ou du Planificateur de tâches (avec les privilèges les plus élevés), le lecteur mappé n'est pas disponible. La tentative d'utilisation des lecteurs réseau mappés provoque l'erreur. Le système ne peut pas trouver le chemin spécifié (code d'erreur: 0x80070003) .

Voici les captures d'écran d'un ordinateur exécutant Windows 10 version 1903.

Toutefois, le lecteur réseau mappé est accessible à partir de l'Explorateur de fichiers et de l'invite de commandes standard (non élevée).

Divers forums suggèrent que les utilisateurs utilisent des chemins UNC (comme solution de contournement) au lieu de lettres de lecteur mappées lorsqu'ils sont en mode d'invite de commandes élevé ou lorsqu'ils exécutent des fichiers de commandes avec le Planificateur de tâches. En outre, ils conseillent aux utilisateurs de désactiver Exécuter avec les privilèges les plus élevés pour ce travail de tâche planifiée spécifique afin de pouvoir utiliser le lecteur réseau mappé.

$config[ads_text6] not found

Cependant, ces solutions de contournement ne sont pas nécessaires car il existe une solution permanente basée sur le registre qui vous permet d'utiliser des lecteurs mappés à partir de processus standard et élevés.

(Accédez directement à la solution)

Article de la Base de connaissances Microsoft KB937624 Après avoir activé l'UAC, les programmes peuvent ne pas pouvoir accéder à certains emplacements réseau résout ce problème. Mais le vrai correctif est donné à la place dans KB3035277 (également mentionné ci-dessous).

KB937624 déclare:

Lorsqu'un administrateur se connecte à Windows Vista, la Local Security Authority (LSA) crée deux jetons d'accès. Si LSA est notifié que l'utilisateur est membre du groupe Administrateurs, LSA crée la deuxième connexion dont les droits d'administrateur ont été supprimés (filtrés). Ce jeton d'accès filtré est utilisé pour démarrer le bureau de l'utilisateur. Les applications peuvent utiliser le jeton d'accès administrateur complet si l'utilisateur administrateur clique sur Autoriser dans une boîte de dialogue Contrôle de compte d'utilisateur.

Si un utilisateur est connecté à Windows Vista et si le contrôle de compte d'utilisateur est activé, un programme qui utilise le jeton d'accès filtré de l'utilisateur et un programme qui utilise le jeton d'accès administrateur complet de l'utilisateur peuvent s'exécuter en même temps. Étant donné que LSA a créé les jetons d'accès au cours de deux sessions de connexion distinctes, les jetons d'accès contiennent des ID de connexion distincts.

Étant donné que les mappages de lecteurs créés à partir de l'Explorateur de fichiers proviennent d'un jeton utilisateur standard, les lecteurs ne sont pas vus à partir d'un jeton élevé (par exemple, invite de commandes administrateur ou tâches planifiées configurées pour s'exécuter avec les privilèges les plus élevés).

Un autre article Microsoft KB3035277 intitulé Les lecteurs mappés ne sont pas disponibles à partir d'une invite élevée lorsque le contrôle de compte d'utilisateur est configuré sur «Demander les informations d'identification» propose une explication ainsi qu'une solution qui fonctionne dans Windows Vista à Windows 10 (testé sur v1903)

KB3035277 déclare:

Lorsque l'UAC est activé, le système crée deux sessions de connexion à la connexion de l'utilisateur. Les deux sessions de connexion sont liées l'une à l'autre. Une session représente l'utilisateur au cours d'une session élevée et l'autre session où vous exécutez avec le moins de droits d'utilisateur.

Lorsque des mappages de lecteur sont créés, le système crée des objets de lien symbolique («DosDevices») qui associent les lettres de lecteur aux chemins UNC. Ces objets sont spécifiques à une session de connexion et ne sont pas partagés entre les sessions de connexion.

Remarque L'entrée de Registre EnableLinkedConnections force l'écriture des liens symboliques dans les deux sessions d'ouverture de session liées qui sont créées, lorsque l'UAC est activé.

Et voici une note utile de James Finnigan [MSFT].

La stratégie «EnableLinkedConnections» repose sur le fait que l'utilisateur est membre du groupe Administrateurs et partage à travers la frontière entre non élevé et élevé (ce qui peut conduire à des mappages de lecteur intentionnellement mal dirigés par des logiciels malveillants). Il s'agit essentiellement d'une solution de contournement pour les clients qui sont en train de déplacer leurs utilisateurs vers un utilisateur standard, mais qui doivent le faire progressivement et les conserver en tant que membres du groupe Administrateurs à court terme.

Correction: les lecteurs mappés ne sont pas visibles à partir de l'invite de commandes d'administration et du planificateur de tâches

Comme l'indique le KB3035277, vous pouvez résoudre le problème en créant la EnableLinkedConnections DWORD (32 bits) EnableLinkedConnections dans la clé de registre suivante et en définissant ses données sur 1 .

$config[ads_text6] not found
 HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System 
  1. Pour créer / définir la valeur de Registre, démarrez l'Éditeur du Registre ( regedit.exe )
  2. Allez à la branche ci-dessus.
  3. Dans le menu Edition, cliquez sur Nouveau, valeur DWORD (32 bits).
  4. Nommez la valeur DWORD en tant que EnableLinkedConnections et définissez ses données sur 1 .

  5. Quittez l'Éditeur du Registre et redémarrez Windows.

La valeur EnableLinkedConnections permet à Windows de partager des connexions réseau entre le jeton d'accès filtré et le jeton d'accès administrateur complet pour un membre du groupe Administrateurs. Comme indiqué précédemment, vous devez redémarrer l'ordinateur après avoir créé la valeur de registre.

Après le redémarrage de Windows, les lecteurs sont accessibles dans des processus normaux et élevés, c'est-à-dire des processus s'exécutant sous un jeton d'accès filtré ainsi que le jeton d'accès administrateur complet.

Utilisation d'un fichier .REG

Vous pouvez automatiser le paramètre ci-dessus en créant un fichier .reg à partir du contenu suivant.

 Éditeur de registre Windows version 5.00 [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System] "EnableLinkedConnections" = dword: 00000001 

Le Planificateur de tâches ne peut toujours pas accéder aux lecteurs mappés?

Si vos tâches planifiées ne parviennent toujours pas à accéder aux lecteurs réseau mappés malgré l'activation du EnableLinkedConnections registre EnableLinkedConnections, vous devrez vérifier deux choses:

  1. Une politique de sécurité liée au contrôle des comptes d'utilisateurs, et
  2. Si la tâche planifiée est configurée pour s'exécuter sous un autre utilisateur, vous devrez à nouveau mapper le lecteur à partir de ce compte d'utilisateur. (voir Important: note à la fin de cet article)

Si le paramètre de stratégie UAC suivant est configuré sur Demander les informations d'identification, les tâches planifiées (exécutées avec les privilèges les plus élevés) ne parviennent pas à accéder au lecteur réseau mappé.

 Contrôle de compte d'utilisateur: comportement de l'invite d'élévation pour les administrateurs en mode d'approbation administrateur 

À l'aide de l'éditeur de stratégie de sécurité ( secpol.msc ) ou de l'éditeur de registre, vous devrez définir la stratégie ci-dessus sur Demander le contenu (qui est le paramètre par défaut de Windows)

Des instructions complètes pour configurer la stratégie de sécurité ci-dessus (ainsi qu'une solution alternative basée sur le registre) sont disponibles dans l'article UAC demande un mot de passe même s'il est connecté en tant qu'administrateur.

Après avoir réinitialisé la stratégie ci-dessus, redémarrez Windows. Vos lecteurs mappés doivent être disponibles pour les tâches planifiées configurées pour s'exécuter avec les privilèges les plus élevés.

Important: Cependant, lorsque vous exécutez la tâche sous un autre compte d'utilisateur ou dans le contexte SYSTEM (LocalSystem), les lecteurs mappés ne seront pas visibles malgré la valeur de Registre EnableLinkedConnections . Cela est dû au fait que les mappages de lecteurs réseau sont par utilisateur. Cela signifie que vous devrez à nouveau mapper le lecteur sous ce compte d'utilisateur spécifique configuré pour exécuter la tâche planifiée.

Les informations contenues dans cet article s'appliquent à Windows Vista via Windows 10. Les solutions ont été testées pour la dernière fois dans Windows 10 v1903.

$config[ads_text6] not found

Articles Connexes