Pilot_Maverik 0 Geschrieben 26. September 2021 Melden Teilen Geschrieben 26. September 2021 Hallo liebe Community, ich bin neu hier und muss leider gestehen, dass ich gar keine Ahnung habe. Ich habe bereits tagelang gegoogelt und bin leider nicht an mein Ziel gelangt. Jetzt hoffe ich, dass ihr, liebe Community, mir soweit helfen könnt, dass ich in der Lage bin das für mich erforderliche Script zu schreiben. Um den folgenden Sachverhalt handelt es sich: Ich besitze eine Synology DS218+, auf der ich einen Domain-Controller betreibe. Dort eingerichtet sind diverse Gruppen und Benutzer, die diesen Gruppen zugeordnet sind. Des Weitern gibt es diverse freigegebene Ordner, für die die besagten Gruppen, respektive Benutzer, verschiedene Zugriffsrechte besitzen. Soweit zum Server. Nun zu dem Client-PC: Hier wurden alle Domain-Benutzer eingebunden, was soweit sehr gut funktioniert (nach viel "Try and Error"). Per Logon-Script, das bei jeden Benutzer im Domain-Controller zugeordnet ist, sollen beim Einloggen in den Client-PC, die auf der Synology freigegebenen Ordner als Netzlaufwerk verbunden werden. Es soll für alle Domain-Benutzer das gleiche Script mit identischen Inhalt verwendet werden. Soll heißen, dass auch Netzlaufwerke innerhalb des Scripts verbunden werden, auf die der Domain-Benutzer keine Zugriffsrechte besitzt. Soweit so gut. Das Script habe ich bereits erstellt, und es funktioniert für Domain-Benutzer, die auf alle Netzlaufwerke zugreifen dürfen. @echo off net use * /delete net use E: \\<<NAS-IP>>\<<Netzlaufwerk_1>> /persistent:no net use F: \\<<NAS-IP>>\<<Netzlaufwerk_2>> /persistent:no net use G: \\<<NAS-IP>>\<<Netzlaufwerk_3>> /persistent:no net use H: \\<<NAS-IP>>\<<Netzlaufwerk_4>> /persistent:no @echo on quit Wird dieses Script aber von einem Domain-Benutzer ausgeführt, der nicht auf eines oder mehrere dieser Laufwerke zugreifen darf, bleibt die Ausführung des Script stehen und verlang die Eingabe eines Benutzers samt Passwort. Genau dieses soll verhindert werden. Das Script soll vollständig durchlaufen und die Einbindung von solchen Laufwerken einfach überspringen. Ich hoffe ihr könnt mit helfen, da ich hier seit Tagen nicht weiter komme. Vielen Dank im Voraus!!! Michael Zitieren Link zu diesem Kommentar
testperson 1.680 Geschrieben 26. September 2021 Melden Teilen Geschrieben 26. September 2021 Hi, in deinem Fall wäre es vermutlich am einfachsten, \\<NAS>\Netzlaufwerk (net use E: \\<NAS>\Netzlaufwek) zu verbinden und dann dort die (Unter) Ordner (\\<NAS>\Netzlaufwerk\Ordner1, \\<NAS>\Netzlaufwerk\Ordner2, \\<NAS>\Netzlaufwerk\Ordner3, ...) passend zu berechtigen. Gruß Jan Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 26. September 2021 Melden Teilen Geschrieben 26. September 2021 Und zusätzlich… ip Adresse bedeutet automatisch ntlm anstatt Kerberos bei der Authentifizierung. Zitieren Link zu diesem Kommentar
Finanzamt 76 Geschrieben 26. September 2021 Melden Teilen Geschrieben 26. September 2021 Hallo und Willkommen! Wenn Du (ohne Änderungen an Struktur und Berechtigungen) nur verhindern willst, dass das Skript stehen bleibt, solltest Du m.E. in den Zeilen 3ff. Deines Skriptes "IF EXIST" ... vor das "net use" schreiben. Ein wenig verwirrt mich, dass das Passwort abgefragt wird. Da ist also was bei der Ausführung des Scriptes sichtbar. Probier doch bitte mal (unter einem "Nicht-Zugriffs-Account") über die Konsole (cmd) aus: IF EXIST \\<<NAS-IP>>\Netzlaufwerk .... ECHO Vorhanden Wenn Dir "Vorhanden" zurückgemeldet wird, könntest Du versuchen, eine 1-Bit-Datei "FreigabeName.txt" in der Wurzel der Freigabe anzulegen und deren Rechte so einstellen, dass sie nur Berechtigten angezeigt wird. Anschließend solltest Du (wieder unter den eingeschränkten Rechten und der Konsole) IF EXIST \\<<NAS-IP>>\Netzlaufwerk...\FreigabeName.txt ECHO Vorhanden ausprobieren. Wenn Vorschlag 1 funktioniert, ist ja alles bestens und Du kommst mit einer minimalen Scriptanpassung hin. Wenn nicht, aber Vorschlag 2 funktioniert, müsstest Du die FreigabeName.txt in alle Map-Wurzeln kopieren und zusätzlich dafür sorgen, dass kein "Berechtigter" die Datei(en) wieder sichtbar macht. Wenn Vorschlag 2 nicht funktioniert, passe ich erstmal. Dann solltest Du vlt. posten, welche Rechte Du Ordnern .UND. Freigaben gegeben hast. Viel Erfolg und gegrüßt! Zitieren Link zu diesem Kommentar
Pilot_Maverik 0 Geschrieben 26. September 2021 Autor Melden Teilen Geschrieben 26. September 2021 vor 3 Stunden schrieb testperson: Hi, in deinem Fall wäre es vermutlich am einfachsten, \\<NAS>\Netzlaufwerk (net use E: \\<NAS>\Netzlaufwek) zu verbinden und dann dort die (Unter) Ordner (\\<NAS>\Netzlaufwerk\Ordner1, \\<NAS>\Netzlaufwerk\Ordner2, \\<NAS>\Netzlaufwerk\Ordner3, ...) passend zu berechtigen. Gruß Jan Hi, danke für deine schnelle Antwort. Wenn ich es korrekt verstanden habe, schlägst du vor die Ordnerstruktur der Synology neu aufzubauen und nur ein freigegebenes Laufwerk zu erstellen. Alle anderen jetzt vorhandenen freigegebenen Laufwerke sollten als Unterordner des ersten Netzlaufwerkes eingefügt werden. Ist das Korrekt? Grüße Michael vor 3 Stunden schrieb NorbertFe: Und zusätzlich… ip Adresse bedeutet automatisch ntlm anstatt Kerberos bei der Authentifizierung. Hi, danke für deine schnelle Antwort. Sollte ich dann die IP durch den Servernamen ersetzten? Grüße Michael vor 3 Stunden schrieb Finanzamt: Hallo und Willkommen! Wenn Du (ohne Änderungen an Struktur und Berechtigungen) nur verhindern willst, dass das Skript stehen bleibt, solltest Du m.E. in den Zeilen 3ff. Deines Skriptes "IF EXIST" ... vor das "net use" schreiben. Ein wenig verwirrt mich, dass das Passwort abgefragt wird. Da ist also was bei der Ausführung des Scriptes sichtbar. Probier doch bitte mal (unter einem "Nicht-Zugriffs-Account") über die Konsole (cmd) aus: IF EXIST \\<<NAS-IP>>\Netzlaufwerk .... ECHO Vorhanden Wenn Dir "Vorhanden" zurückgemeldet wird, könntest Du versuchen, eine 1-Bit-Datei "FreigabeName.txt" in der Wurzel der Freigabe anzulegen und deren Rechte so einstellen, dass sie nur Berechtigten angezeigt wird. Anschließend solltest Du (wieder unter den eingeschränkten Rechten und der Konsole) IF EXIST \\<<NAS-IP>>\Netzlaufwerk...\FreigabeName.txt ECHO Vorhanden ausprobieren. Wenn Vorschlag 1 funktioniert, ist ja alles bestens und Du kommst mit einer minimalen Scriptanpassung hin. Wenn nicht, aber Vorschlag 2 funktioniert, müsstest Du die FreigabeName.txt in alle Map-Wurzeln kopieren und zusätzlich dafür sorgen, dass kein "Berechtigter" die Datei(en) wieder sichtbar macht. Wenn Vorschlag 2 nicht funktioniert, passe ich erstmal. Dann solltest Du vlt. posten, welche Rechte Du Ordnern .UND. Freigaben gegeben hast. Viel Erfolg und gegrüßt! Hi, auch dir danke für deine schnelle Antwort. Ich werde es morgen mal ausprobieren und melde mich dann. Grüße Michael Zitieren Link zu diesem Kommentar
NorbertFe 2.045 Geschrieben 26. September 2021 Melden Teilen Geschrieben 26. September 2021 Zitat Sollte ich dann die IP durch den Servernamen ersetzten? Ja durch den Full qualified Name. Zitieren Link zu diesem Kommentar
testperson 1.680 Geschrieben 27. September 2021 Melden Teilen Geschrieben 27. September 2021 vor 12 Stunden schrieb Pilot_Maverik: danke für deine schnelle Antwort. Wenn ich es korrekt verstanden habe, schlägst du vor die Ordnerstruktur der Synology neu aufzubauen und nur ein freigegebenes Laufwerk zu erstellen. Alle anderen jetzt vorhandenen freigegebenen Laufwerke sollten als Unterordner des ersten Netzlaufwerkes eingefügt werden. Ist das Korrekt? Korrekt. Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 28. September 2021 Melden Teilen Geschrieben 28. September 2021 Am 26.9.2021 um 14:46 schrieb Pilot_Maverik: Wird dieses Script aber von einem Domain-Benutzer ausgeführt, der nicht auf eines oder mehrere dieser Laufwerke zugreifen darf, bleibt die Ausführung des Script stehen und verlang die Eingabe eines Benutzers samt Passwort. Du kannst natürlich mit Gruppen arbeiten: https://www.gruppenrichtlinien.de/artikel/anmelde-skript-benutzer-gruppenabfrage-zuweisung-drucker Alternativ natürlich auch mit Namen, siehe diesen Teil: rem durch den Parameter /i wird nicht in Klein-/Großschreibung unterschieden if /i %username%==Dieter.Meier goto Dieter if /i %username%==Heiner.Geier goto Heiner Den eingegebenen %username% konnten wir nicht finden. Bitte wenden Sie sich an den Administrator. pause GOTO :EOF :Dieter Tu was immer getan werden muss an dieser Stelle. Gibt es den eingegebenen Usernamen nicht, fängst Du das am Ende dieser Zeilen ab. Jetzt muss sich der Benutzer bei dir melden. ;) Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.