73329
Nov 17, 2009, updated at 14:37:04 (UTC)
4548
5
0
Terminal Server Force Logoff nach Ablauf der Anmeldezeit
Die Anmeldezeiten die Microsoft zur Verfügung stellt sind ja schön und gut, nur wie immer nicht ganz fertig gedacht…
Problem:
User meldet sich an einem W2k3 TS an wobei er dies nur zwischen 07:00 bis 14:00 darf. Ist er aber ab 14:00 immer noch angemeldet kann er uneingeschränkt weiterarbeiten.
Ziel:
User die um 14:00 immer noch angemeldet sind sollen automatisch abgemeldet werden (schön wäre eine Gnadenfrist von weiteren 5min mit einer Nachricht – muss aber nicht sein!). Der kniff an der ganzen Sache ist, dass es spezialuser geben könnte die länger arbeiten wollen und somit kommt ein „globaler“ logoff oder shutdown nicht in frage.
Meine Infos die ich Zusammengeragen habe, jedoch noch nicht so funktionieren wie ich will:
- net accounts /forcelogoff:5
Ergebnis: User kann weiterarbeiten (selbst wenn der befehl mit /domain erweitert wird). Was steckt hinter dem Befehl?!
- Skript das erst die angemeldeten User Checkt, die Erlaubte anmeldezeit prüft und einen Logoff absetzen würde:
(Meine Domäne: TestDom)
Das Problem ist, dass nur 1 angemeldeten User angezeigt wird. Hab ich eventuell noch einen Fehler in der Schlaufe?
- Force Disconnect via GP
Einfach nur unbrauchbar! Trennt nur die SMB verbindungen und meldet den Benutzer nicht automatisch ab!!!
- Logonskript für den User der sich am TS anmeldet, das einen Geplanten Task hinzufügt der um 14:00 gestartet wird. Im Skript würde so was stehen wie:
Wurde noch nicht getestet da das Ziel ist das ganze über die Anmeldezeiten zu steuern und nicht mit einem Textfile dass man immer erstellen muss für spezialuser die länger arbeiten wollen. (wäre aber eine denkbare Notlösung…)
Soviel zu meinen vorarbeiten…
Mir ist eigentlich alles recht was die Lösungsansätze betrifft– verstekte GPO‘s, DOS- VBS- PS-Skripts, alles…
MERCI
Problem:
User meldet sich an einem W2k3 TS an wobei er dies nur zwischen 07:00 bis 14:00 darf. Ist er aber ab 14:00 immer noch angemeldet kann er uneingeschränkt weiterarbeiten.
Ziel:
User die um 14:00 immer noch angemeldet sind sollen automatisch abgemeldet werden (schön wäre eine Gnadenfrist von weiteren 5min mit einer Nachricht – muss aber nicht sein!). Der kniff an der ganzen Sache ist, dass es spezialuser geben könnte die länger arbeiten wollen und somit kommt ein „globaler“ logoff oder shutdown nicht in frage.
Meine Infos die ich Zusammengeragen habe, jedoch noch nicht so funktionieren wie ich will:
- net accounts /forcelogoff:5
Ergebnis: User kann weiterarbeiten (selbst wenn der befehl mit /domain erweitert wird). Was steckt hinter dem Befehl?!
- Skript das erst die angemeldeten User Checkt, die Erlaubte anmeldezeit prüft und einen Logoff absetzen würde:
(Meine Domäne: TestDom)
@echo off
rem Wochentag bestimmen
FOR /F "tokens=1,2,3 delims=." %%a in ('echo %date%') do set yy=%%c & set mm=%%b & set dd=%%a
set /a "TwoDigitYearMax=2038%%1000"
if 1%yy% LSS 200 if 1%yy% LSS 1%TwoDigitYearMax% (set yy=20%yy%) else (set yy=19%yy%)
set /a dd=100%dd%%%100,mm=100%mm%%%100
set /a z=14-mm,z/=12,y=yy+4800-z,m=mm+12*z-3,dow=153*m+2
set /a dow=dow/5+dd+y*365+y/4-y/100+y/400-2472630,dow%%=7,dow+=1
If %dow% equ 1 set "WoTa=Montag"
If %dow% equ 2 set "WoTa=Dienstag"
If %dow% equ 3 set "WoTa=Mittwoch"
If %dow% equ 4 set "WoTa=Donnerstag"
If %dow% equ 5 set "WoTa=Freitag"
If %dow% equ 6 set "WoTa=Samstag"
If %dow% equ 7 set "WoTa=Sonntag"
rem eigentlicher Logoff Skript
for /f "skip=1 delims=\ tokens=2" %%i in ('psloggedon.exe -x -l ^| findstr "TestDom"') do (
echo Username: %%i
for /f "tokens=3 delims= " %%w in ('net user %%i /domain ^| findstr /i "%WoTa%"') do (
if /i "%%w" == "%WoTa% 07:00 - 14:00" echo shutdown /a /f /t 30
)
echo Naechster Benutzer
)
- Force Disconnect via GP
Einfach nur unbrauchbar! Trennt nur die SMB verbindungen und meldet den Benutzer nicht automatisch ab!!!
- Logonskript für den User der sich am TS anmeldet, das einen Geplanten Task hinzufügt der um 14:00 gestartet wird. Im Skript würde so was stehen wie:
if C:\Dokumente und Einstellungen\User1\spezial.txt exist goto exitt
logoff
:exitt
exit
Soviel zu meinen vorarbeiten…
Mir ist eigentlich alles recht was die Lösungsansätze betrifft– verstekte GPO‘s, DOS- VBS- PS-Skripts, alles…
MERCI
Please also mark the comments that contributed to the solution of the article
Content-Key: 129581
Url: https://administrator.de/contentid/129581
Printed on: April 24, 2024 at 16:04 o'clock
5 Comments
Latest comment
Ich hab zwar zu diesem sicher uralten und 100fach irgendwie gelösten Problem gerade keinen Link parat, aber immerhin ein Skript, das funktionieren solte und open source ist.
http://sourceforge.net/projects/trbdk3netlogoff/
http://sourceforge.net/projects/trbdk3netlogoff/