Batch: Login überprüfen
Hallo @ all,
Ich habe mir eine Batch Datei geschrieben mit diversen Tools.
Die Batch Datei fungiert als eine Art "Startseite" um andere Tools aufzurufen -> nichts neues.
Problem; damit die Batch Datei startet, soll, durch die Batch, geprüft werden ob der angemeldete User am Windows 7 System überhaupt berechtigt ist.
Deklarieren der User die berechtigt werden, User A bis User D dürfen die Datei öffnen, wenn User E am Windows System angemeldet ist und
die Batch Datei hätte, darf kein Start erfolgen.
Ich möchte folgendes realisieren:
Ziel gedanklich geschrieben:
User A, User B, User C, User D == %username%, nur diese angemeldeten User dürfen die Batch ausführen.
%username% == %logon% goto menue
%username% <> %logon% goto bye
Bisher habe ich:
Anzeige der Batch
set /p logon="Dein Username: de\"
if "%username%" == "user A" (goto menue) else goto bye
:menue
echo Startseite aktiv
:bye
echo sie sind nicht berechtigt.
Was dazu führt dass jeder der "user A" eintippt auch die Batch Datei ausführen kann.
Wie kann die Überprüfung "angemeldeter User" in Batch umgesetzt werden?
Wie kann in Batch mehrere User begrenzt werden?
Vielen Dank.
Ich habe mir eine Batch Datei geschrieben mit diversen Tools.
Die Batch Datei fungiert als eine Art "Startseite" um andere Tools aufzurufen -> nichts neues.
Problem; damit die Batch Datei startet, soll, durch die Batch, geprüft werden ob der angemeldete User am Windows 7 System überhaupt berechtigt ist.
Deklarieren der User die berechtigt werden, User A bis User D dürfen die Datei öffnen, wenn User E am Windows System angemeldet ist und
die Batch Datei hätte, darf kein Start erfolgen.
Ich möchte folgendes realisieren:
Ziel gedanklich geschrieben:
User A, User B, User C, User D == %username%, nur diese angemeldeten User dürfen die Batch ausführen.
%username% == %logon% goto menue
%username% <> %logon% goto bye
Bisher habe ich:
Anzeige der Batch
set /p logon="Dein Username: de\"
if "%username%" == "user A" (goto menue) else goto bye
:menue
echo Startseite aktiv
:bye
echo sie sind nicht berechtigt.
Was dazu führt dass jeder der "user A" eintippt auch die Batch Datei ausführen kann.
Wie kann die Überprüfung "angemeldeter User" in Batch umgesetzt werden?
Wie kann in Batch mehrere User begrenzt werden?
Vielen Dank.
Please also mark the comments that contributed to the solution of the article
Content-Key: 238775
Url: https://administrator.de/contentid/238775
Printed on: April 18, 2024 at 10:04 o'clock
3 Comments
Latest comment
Hallo Spyeer!
Dir ist klar, dass, wer einen Batch starten kann, diesen auch kopieren und die Kopie bearbeiten und danach ausführen kann?
Die technische Umsetzung Deines Wunsches könnte zB so erfolgen (ungetestet):
Grüße
bastla
Dir ist klar, dass, wer einen Batch starten kann, diesen auch kopieren und die Kopie bearbeiten und danach ausführen kann?
Die technische Umsetzung Deines Wunsches könnte zB so erfolgen (ungetestet):
set "Erlaubt=#userA#userB#userC#userD#"
echo %Erlaubt%|findstr /i "#%username%#">nul && goto menue
echo sie sind nicht berechtigt.
goto :eof
:menue
echo Startseite aktiv
bastla
Hallo Spyeer.
Bat2Exe ist allenfalls gut um Code vor versehentlichen Änderungen zu schützen. Zu mehr definitiv nicht.
Grüße
rubbeman
Theoretisch wäre es möglich die exe wieder in (fast) Klartext umzuwandeln ...
... und praktisch ist das gar nicht nötig, weil der Code zur Laufzeit im Klartext in deinem %temp% Verzeichnis zu finden ist.Bat2Exe ist allenfalls gut um Code vor versehentlichen Änderungen zu schützen. Zu mehr definitiv nicht.
Grüße
rubbeman