View a markdown version of this page

Ordnen Sie SMB-Netzwerklaufwerke (Server Message Block) zu - WorkSpaces Amazon-Anwendungen

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Ordnen Sie SMB-Netzwerklaufwerke (Server Message Block) zu

Sie können jeden Computer verwenden, der sich im Zielnetzwerk der SMBs befindet. Wenn Sie das Setup lieber mithilfe von Sitzungsskripten konfigurieren, müssen Sie zuerst ein Skript erstellen, das aufgerufen wird, wenn der Benutzer angemeldet ist, da das Sitzungsskript pro Image konfiguriert wird.

Gehen Sie wie folgt vor, um SMB-Netzwerklaufwerke (Server Message Block) zuzuordnen.

Schritt 1: Stellen Sie sicher, dass die Dienste ausgeführt werden

Öffnen Sie im Startmenü services.msc und stellen Sie sicher, dass die folgenden Dienste alle ausgeführt werden:

  • DNS-Client

  • Veröffentlichung der Ressource „Function Discovery“

  • SSDP-Erkennung

  • UPnP-Geräte-Host

Schritt 2: Erstellen Sie einen SMB-Ordner

Sie können ein SMB mit dem Datei-Explorer erstellen.

So verwenden Sie den Datei-Explorer, um Ihre SMB-Freigabeordner zu konfigurieren
  1. Right-click Öffnen Sie den SMB-Ordner und wählen Sie Eigenschaften, Teilen.

  2. Wählen Sie Erweitertes Teilen.

  3. Markieren Sie für „Erweitertes Teilen“ die Option „Diesen Ordner teilen“ und wählen Sie dann „Berechtigungen“.

  4. Wenn Sie allen Benutzern Berechtigungen gewähren möchten, behalten Sie die Standardeinstellung bei.

    Wenn Sie bestimmte Benutzer hinzufügen möchten, wählen Sie unter „Freigabeberechtigungen“ die Option „Alle“ und „Entfernen“ aus. Wählen Sie dann Hinzufügen und geben Sie die Benutzer oder Gruppen ein, für die Sie auf die Dateifreigabe zugreifen möchten.

    Wählen Sie für jeden Benutzer oder jede Gruppe, die Sie hinzufügen, „Zulassen“, „Vollzugriff“, „Ändern“ oder „Lesen“.

  5. Wählen Sie Anwenden, OK, OK, Schließen.

Schritt 3: Stellen Sie sicher, dass auf das SMB in der Domain zugegriffen werden kann

Öffnen Sie den Datei-Explorer von einem anderen Server aus, der dieselbe Sicherheitsgruppe verwendet und derselben Domäne angehört. Greifen Sie über den angegebenen Netzwerkpfad auf die Netzwerkfreigabe zu, indem Sie zum Netzwerkpfadordner navigieren. Wählen Sie „Eigenschaften“, „Teilen“ und „Netzwerkpfad“.

Aktivieren Sie das Erstellen symbolischer Links aus den local/domain Gruppenrichtlinien für Ihre Benutzer, um sicherzustellen, dass das Sitzungs- oder Anmeldeskript in der Gruppenrichtlinie definiert ist. Auf diese Weise können Sie in Schritt 5 ein Skript mit Benutzerberechtigungen erstellen.

Um Benutzern das Erstellen symbolischer Links aus der local/domain Gruppenrichtlinie heraus zu ermöglichen
  1. Wählen Sie im GPO, das zur Definition dieser Richtlinie verwendet wird, die Optionen Computerkonfiguration, Windows-Einstellungen, Sicherheitseinstellungen , Zuweisen von Benutzerrechten, Richtlinie, Symbolische Links erstellen aus. Aktualisieren Sie anschließend die Zugriffsrechte, die Benutzer hinzufügen möchten. Weitere Informationen zum Erstellen symbolischer Links finden Sie unter Erstellen symbolischer Links.

  2. Standardmäßig sind Remote-zu-Remote-Zugriffe (z. B. eine Symlink-Zuordnung zu einer Netzwerkfreigabe innerhalb eines anderen ähnlichen Symlinks) und Remote-zu-Local-Zugriffe (z. B. eine Symlink-Zuordnung zu einer lokalen Freigabe innerhalb einer Symlink-Zuordnung zu einer Netzwerkfreigabe) deaktiviert. Wenn eine Symlink-Zuordnung erforderlich ist, führen Sie die folgenden Befehle aus:

    • Um den Fernzugriff zu aktivieren - fsutil behavior set SymlinkEvaluation R2R:1

    • Zur Aktivierung des Fernzugriffs auf lokale Daten - fsutil behavior set SymlinkEvaluation R2L:1

Schritt 5: Erstellen Sie ein Skript, das aufgerufen wird, wenn der Benutzer angemeldet ist

Erstellen Sie ein Skript, das aufgerufen wird, wenn der Benutzer angemeldet wird, indem Sie entweder ein WorkSpaces Anwendungssitzungsskript oder ein GPO-Anmeldeskript verwenden. Wenn Sie das WorkSpaces Anwendungssitzungsskript verwenden, wird das Sitzungsskript nur auf dieses spezifische WorkSpaces Anwendungs-Image angewendet. Wenn Sie das GPO-Anmeldeskript verwenden, werden die GPOs auf die Domäne/OU angewendet, die für Ihre Flotten konfiguriert werden kann. Auf diese Weise müssen Sie nicht für jedes Image, das Sie besitzen, ein Konfigurationsskript einrichten.

So verwenden Sie ein Sitzungsskript, um den SMB-Freigabeordner unter Meine Dateien zu mounten (mithilfe von Powershell)
  1. Nachdem Sie die Benutzerberechtigungen erfolgreich definiert haben, konfigurieren Sie das folgende Beispielskript mithilfe des Benutzerkontextes oder des Systemkontexts.

    Das Folgende ist das Beispielskript config.json, das den Benutzerkontext verwendet.

    "SessionStart": { "executables": [ { "context": "system", "filename": "", "arguments": "", "s3LogEnabled": true }, { "context": "user", "filename": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe", "arguments": "-File \"C:\\AppStream\\SessionScripts\\userStart.ps1\"", "s3LogEnabled": true } ], "waitingTime": 30

    Das Folgende ist das Beispielskript, das den Systemkontext verwendet.

    "SessionStart": { "executables": [ { "context": "system", "filename": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe", "arguments": "-File \"C:\\AppStream\\SessionScripts\\systemStart.ps1\"", "s3LogEnabled": true }, { "context": "user", "filename": "", "arguments": "", "s3LogEnabled": true } ], "waitingTime": 30
  2. Wenn Sie Flotten mit mehreren Sitzungen verwenden, können Sie die Systemumgebungsvariable verwenden$env:AppStream_Session_UserName, um zum Ordner Meine Dateien Ihres Benutzers zu navigieren. Dies ermöglicht die Zuordnung zu einem Benutzernamen Admin anstelle des Benutzernamens, wenn Sie den Systemkontext verwenden. $env:USERNAME

    # Define the target application path $targetPathes = "<SMB-PATH>" # Define the shortcut location $symlinkLocation = "C:\Users\$Env:AppStream_Session_UserName\My Files\Custom Folder" # Create the junction for Custom Home Folder under MyFiles New-Item -ItemType SymbolicLink -Path $symlinkLocation -Target $targetPaths
  1. Mounten Sie gemeinsame SMB-Ordner, indem Sie einen symbolischen Link zu einer Datei oder einem Ordner erstellen. Weitere Informationen finden Sie unter Beispiel 7: Einen symbolischen Link zu einer Datei oder einem Ordner erstellen

  2. Weisen Sie Benutzeranmeldeskripten zu.

  3. Fügen Sie das folgende Skript hinzu, um eine Verknüpfung für benutzerdefinierte Basisordner unter Meine Dateien zu erstellen.

    # Define the target application path $targetPathes = "<SMB-PATH>" # Define the shortcut location $symlinkLocation = "C:\Users\$env:Username\My Files\Custom Folder" # Create the junction for Custom Home Folder under MyFiles New-Item -ItemType SymbolicLink -Path $symlinkLocation -Target $targetPaths

    Wenn Sie Windows Server 2022-Images verwenden, tritt möglicherweise ein Problem auf, bei dem Ihr Ordner „Meine Dateien“ erst erstellt wird, wenn das Anmeldeskript erfolgreich abgeschlossen wurde. Dies kann zu einem Timeout führen, wenn Ihr SMB-Mounting über das Anmeldeskript ausgeführt wird. Um dieses Problem zu lösen und gleichzeitig Ihr SMB zu mounten, lösen Sie mithilfe Ihres Anmeldeskripts einen unabhängigen Prozess (Start-Process) aus, indem Sie wie folgt vorgehen:

    1. Erstellen Sie ein Anmeldeskript.

      # Define the log file path $logFilePath = "<This-is-where-your-log-files-are-saved>" # Function to write log messages function Write-Log { param ( [string]$message ) $timestamp = get-date -format "yyyy-MM-dd HH:mm:ss" $logMessage = "$timestamp - $message" $logMessage | Out-File -FilePath $logFilePath -Append -Encoding UTF8 } try { Write-Log "Setting execution policy..." Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force Write-Log "Unblocking logon script file..." $filePath = "<This-is-where-your-actual-logon-script-is-linked>" Unblock-File -Path $filePath Write-Log "Running actual logon script..." Start-Process -FilePath 'Powershell.exe' -ArgumentList "-File `"$filePath`"" } catch { Write-Log "An error occurred: $_" "ERROR" }
    2. Aktualisieren Sie diese Konfiguration für die Verzögerung des Anmeldeskripts bei Bedarf mithilfe der Gruppenrichtlinie. Weitere Informationen finden Sie unter Konfigurieren der Anmeldeskriptverzögerung. Die Verzögerung beim Anmeldeskript ist die Zeit, die verzögert wird, bevor Ihr asynchrones Anmeldeskript ausgelöst wird. Die Standardverzögerung beträgt 5 Minuten.

    3. Starten Sie Ihre Flotte neu, um die Anmeldeskriptverzögerung anzuwenden.