Fehler beim Kopieren von Dateien von einem zugeordneten Laufwerk in ein lokales Verzeichnis (Speicherort ist nicht verfügbar), wenn UAC aktiviert ist

In diesem Artikel wird der Fehler Speicherort ist nicht verfügbar behoben, wenn Sie versuchen, Dateien von einem zugeordneten Laufwerk zu kopieren.

Gilt für: Windows Server 2012 R2
Ursprüngliche KB-Nummer: 2019185

Symptome

Wenn die Benutzerkontensteuerung (User Account Control, UAC) aktiviert ist, erhalten Sie möglicherweise den folgenden Fehler, wenn Sie versuchen, eine Datei aus einem zugeordneten Laufwerk in ein lokales Verzeichnis zu kopieren:

Standort ist nicht verfügbar
<zugeordneter Laufwerkbuchstabe>\ bezieht sich auf einen Speicherort, der nicht verfügbar ist. Es kann sich auf einer Festplatte auf diesem Computer oder in einem Netzwerk befinden. Vergewissern Sie sich, dass der Datenträger ordnungsgemäß eingelegt ist oder dass Sie mit dem Internet oder Ihrem Netzwerk verbunden sind, und versuchen Sie es dann erneut. Wenn sie immer noch nicht gefunden werden kann, wurden die Informationen möglicherweise an einen anderen Speicherort verschoben.

Ursache

Die zugrunde liegende Ursache ist UAC und die Interaktion mit geteiltem Token. Wenn sich ein Administrator bei einem Computer anmeldet, auf dem Admin Genehmigungsmodus (AAM) aktiviert ist, werden dem Benutzer zwei Zugriffstoken gewährt:

  • Ein vollständiges Administratorzugriffstoken
  • ein gefiltertes Standardbenutzerzugriffstoken

Wenn sich ein Mitglied der lokalen Administratorgruppe anmeldet, werden standardmäßig die Windows-Administratorrechte deaktiviert, und erhöhte Benutzerrechte werden entfernt. Dies führt zum Standardbenutzerzugriffstoken. Das Standardbenutzerzugriffstoken wird dann zum Starten des Desktops (Explorer.exe) verwendet. Explorer.exe ist der übergeordnete Prozess, von dem alle anderen vom Benutzer initiierten Prozesse ihr Zugriffstoken erben. Daher werden alle Anwendungen standardmäßig als Standardbenutzer ausgeführt, es sei denn, ein Benutzer erteilt seine Zustimmung oder Anmeldeinformationen, um einer Anwendung die Verwendung eines voll administrativen Zugriffstokens zu genehmigen. Im Gegensatz zu diesem Prozess wird bei der Anmeldung eines Standardbenutzers nur ein Standardbenutzerzugriffstoken erstellt. Dieses Standardbenutzerzugriffstoken wird dann zum Starten des Desktops verwendet.

Die folgenden Bedingungen müssen erfüllt sein, damit der Fehler auftritt:

  1. UAC ist mit AAM aktiviert.
  2. Der Benutzer ist nicht als Administrator des lokalen Computers oder mit Anmeldeinformationen für das Domänenadministratorkonto angemeldet.
  3. Ein Laufwerk wird mithilfe des Standardmäßigen Benutzersicherheitskontexts zugeordnet.
  4. Benutzer haben keine NTFS-Berechtigungen erstellen/schreiben für das Zielverzeichnis.

Der Benutzer hat ein Laufwerk entweder mithilfe der Option Netzwerklaufwerk zuordnen in Windows Explorer oder durch Ausführen des net use Befehls an einer Eingabeaufforderung ohne erhöhte Rechte zugeordnet. Zugeordnete Laufwerke können durch Ausführen von net use als Standardbenutzer an einer Eingabeaufforderung ohne erhöhte Rechte angezeigt werden. In diesem Fall wurde das Laufwerk als Standardbenutzer zugeordnet.

C:\Users\johnsmith>net use
New connections will be remembered.
Status      Local     Remote                    Network
-------------------------------------------------------------------------------
OK          X: [\\contoso-dc1\d$](file://contoso-dc1/d$)               Microsoft Windows Network
The command completed successfully.

Wenn Sie denselben Befehl an einer Eingabeaufforderung mit erhöhten Rechten ausführen, ist kein zugeordnetes Laufwerk aufgeführt.

C:\Windows\system32>net use
New connections will be remembered.
There are no entries in the list.

Dies zeigt deutlich, dass der Sitzung mit erhöhten Rechten das zugeordnete Laufwerk des Standardbenutzers nicht angezeigt wird. Daher kann der Kopiervorgang nicht abgeschlossen werden. Es handelt sich hierbei um ein beabsichtigtes Verhalten.

Hinweis

Standardmäßig ist AAM für Konten aktiviert, die Mitglieder der lokalen Administratorgruppe sind. Die Einstellung befindet sich im Knoten Sicherheitsoptionen der lokalen Richtlinie unter Sicherheitseinstellungen und kann mit der lokalen Gruppenrichtlinie Editor (secpol.msc) und der Gruppenrichtlinie Management Console (GPMC) (gpedit.msc) konfiguriert werden. Weitere Informationen zur Benutzerkontensteuerung finden Sie unter Benutzerkontensteuerung.

Lösung

  1. Ordnen Sie das Laufwerk mithilfe eines Prozesses mit erhöhten Rechten zu. Windows Explorer wird die Laufwerkzuordnung mit erhöhten Rechten jedoch nicht angezeigt. Weitere Informationen finden Sie im Abschnitt Weitere Informationen .

    In der Windows 7-Benutzerkontensteuerung

  2. Verwenden Sie einen UNC-Pfad, um eine Verbindung mit Netzwerkressourcen herzustellen, z. B. \\server\share.

  3. Verwenden Sie Gruppenrichtlinie Einstellungen, um Laufwerke zuzuordnen. In dem nachstehenden Whitepaper wird Gruppenrichtlinie Einstellungen vorgestellt, ein neues Feature in Windows Server 2008. In diesem Whitepaper wird beschrieben, wie Sie Gruppenrichtlinie Einstellungen verwenden können, um Betriebssystem- und Anwendungseinstellungen besser bereitzustellen und zu verwalten. mit Gruppenrichtlinie Einstellungen können Sie Betriebssystem- und Anwendungseinstellungen konfigurieren, bereitstellen und verwalten, die Sie zuvor nicht mit Gruppenrichtlinie verwalten konnten. Beispiele hierfür sind zugeordnete Laufwerke, geplante Aufgaben und Startmenüeinstellungen. Für viele Arten von Betriebssystem- und Anwendungseinstellungen ist die Verwendung von Gruppenrichtlinie Einstellungen eine bessere Alternative zur Konfiguration in Windows-Images oder zum Verwenden von Anmeldeskripts.

    Übersicht über Gruppenrichtlinie-Einstellungen

  4. Ordnen Sie Laufwerke mit einem Anmeldeskript zu, das das Skript launchapp.wsf verwendet, um die Befehle mithilfe des Aufgabenplaners zu planen. Das folgende Dokument hilft Ihnen beim Sortieren durch die neuen und aktualisierten Features, die in Windows Vista verfügbar sind. Es bietet auch viele bewährte Methoden, die Ihnen bei der Bereitstellung von Gruppenrichtlinie helfen.

    Bereitstellen von Gruppenrichtlinie mit Windows Vista

  5. Im folgenden Artikel wird eine nicht unterstützte Methode beschrieben, die die weiter oben beschriebene Sicherheitsänderung durch Konfigurieren des EnableLinkedConnections Registrierungswerts zurückgesetzt. Mit diesem Wert kann Windows Vista Netzwerkverbindungen zwischen dem gefilterten Zugriffstoken und dem Vollständigen Administratorzugriffstoken für ein Mitglied der Gruppe Administratoren freigeben. Nach dem Konfigurieren dieses Registrierungswerts überprüft LSA, ob der aktuellen Benutzersitzung ein anderes Zugriffstoken zugeordnet ist, wenn einem Zugriffstoken eine Netzwerkressource zugeordnet ist. Wenn LSA feststellt, dass ein verknüpftes Zugriffstoken vorhanden ist, wird die Netzwerkfreigabe dem verknüpften Speicherort hinzugefügt.

    Programme können möglicherweise nicht auf einige Netzwerkspeicherorte zugreifen, nachdem Sie die Benutzerkontensteuerung in Windows Vista oder neueren Betriebssystemen aktiviert haben.

Weitere Informationen

Wenn sich der Administrator bei anmeldet, verarbeitet Windows die Anmeldeskripts mithilfe des Tokens mit erhöhten Rechten. Das Skript funktioniert tatsächlich und ordnet das Laufwerk zu. Windows blockiert jedoch die Ansicht der zugeordneten Netzlaufwerke, da der Desktop das gefilterte Token verwendet, während die Laufwerke mithilfe des Tokens mit erhöhten Rechten (vollständiger Administrator) zugeordnet wurden.

Vor Windows 2000 SP2 blieben Gerätenamen (z. B. zugeordnete Laufwerke) global sichtbar, bis sie explizit entfernt oder das System neu gestartet wurde. Aus Sicherheitsgründen haben wir dieses Verhalten ab Windows 2000 SP2 geändert. Ab diesem Zeitpunkt werden alle Geräte einer Authentifizierungs-ID (LUID) zugeordnet. LUID ist eine ID, die für jede Anmeldesitzung generiert wird. Ein Prozess, der im LocalSystem-Kontext ausgeführt wird, kann einen Gerätenamen im globalen Gerätenamespace erstellen, obwohl lokale Namespaceobjekte globale Namespaceobjekte ausblenden können.

Diese zugeordneten Laufwerke sind LUID zugeordnet. Und Anwendungen mit erhöhten Rechten verwenden eine andere LUID, die während eines separaten Anmeldeereignisses generiert wird. Daher werden der Anwendung mit erhöhten Rechten keine zugeordneten Laufwerke für diesen Benutzer mehr angezeigt. Sie werden das gleiche Verhalten bemerken, das Sie zuvor oder die CreateProcessAsUser API verwendet RunAs haben, aber die UAC erhöht die Anzahl der Benutzer, die diese Konzepte verwenden werden, erheblich.

Das Ergebnis ist, dass, wenn Sie eine Eingabeaufforderung erhöhen, keine lokalen Namespace-zugeordneten Laufwerke mehr angezeigt werden, die aus Ihrer ursprünglichen Anmeldung erstellt wurden (unabhängig davon, ob sie über ein Anmeldeskript, mithilfe der WNetAddConnection API oder anderweitig erstellt wurden). Es gibt eine Entschärfung für das Szenario des Startens von Windows Explorer. Wenn Sie auf eine ausführbare Datei doppelklicken, die entweder als Installationsdatei erkannt wird oder als requireAdministrator manifestiert ist, kann Windows erkennen, dass die Rechte erhöht wurden und dass ein Fehler auftritt, der angibt, dass der Pfad nicht gefunden wurde, und diese Laufwerkzuordnung aus der ursprünglichen LUID kopieren. Dies ist jedoch das einzige Szenario, das automatisiert ist.