ptk-etienne

2012R2 - TS-Sammlung - RemoteApp nur für einen Nutzer gleichzeitig zulassen

Hallo,

der Titel sagt es eigentlich schon aus. Ich habe einen normalen Terminalserver (Win 2012R2) aufgesetzt und möchte, dass bestimmte Remote-Programme nur immer von einem Nutzer einer Gruppe gleichzeitig gestartet werden können. Hintergrund ist, dass wir bestimmte Abrechnungstools nutzen, die aufgrund ihrer Funktion nur von einer Quelle aus anweisen dürfen. TS-fähig sind die Tools. Nur einen Nutzer als Rechteinhaber zuzulassen ist auch keine Lösung, da bei Urlaub/Krankheit/Abwesenheit eine zugelassene Vertretung übernehmen muss, was gerade aus letztem Punkt heraus recht häufig passiert.
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 310851

Url: https://administrator.de/forum/2012r2-ts-sammlung-remoteapp-nur-fuer-einen-nutzer-gleichzeitig-zulassen-310851.html

Ausgedruckt am: 20.06.2025 um 19:06 Uhr

DerWoWusste
Lösung DerWoWusste 26.07.2016 um 13:27:21 Uhr
Goto Top
Hi.

Weise die RemoteApp einer Gruppe zu, die du entweder gleich mit allen Vertretern befüllst, oder wo Du eben die Vertreter bei Bedarf nachschiebst.
Die Mühe, spontan etwas zu ändern, wirst Du nicht umgehen können.
ptk-etienne
ptk-etienne 26.07.2016 um 16:52:08 Uhr
Goto Top
Also ist es nicht möglich, zum Beispiel einer Sammlung die Anweisung zu geben, nur eine bestimmte Anzahl gleichzeitiger Benutzer zuzulassen?
DerWoWusste
Lösung DerWoWusste 26.07.2016 um 17:01:16 Uhr
Goto Top
Nein, nicht möglich.
ptk-etienne
ptk-etienne 26.07.2016 um 17:59:00 Uhr
Goto Top
Ich danke Dir - auch wenn die Antwort eine andere ist, als ich erhoffte. ;)
colinardo
colinardo 26.07.2016 aktualisiert um 20:36:25 Uhr
Goto Top
Zitat von @DerWoWusste:
Nein, nicht möglich.
Mit einem Tasktrigger und einem Powershell-Skript das die aktuellen Usersessions prüft, wäre das schon möglich face-wink

So mal als Schnellschuss als Skript in einem RD-Logon-Trigger müsste das hier funktionieren:
Import-Module RemoteDesktop
# ---------
$group = "GruppeXYZ"  
$collection = "MySuperDuperCompanyCollection"  
$max_count = 1
# ----------
$sessions = Get-RDUserSession -CollectionName $collection | ?{$_.SessionState -eq "STATE_ACTIVE"} | sort CreateTime  
if($sessions.Count -gt $max_count){
    # send user a message
    $sessions | select -skip $maxcount | Send-RDUserMessage -MessageTitle "Session Limit exceeded" -MessageBody "User '$($sessions.Username)' is already working with the app, logging off now!"  
    # Give time to see the message
    sleep 2
    # logoff users
    $sessions | select -skip $max_count | Invoke-RDUserLogoff -Force
}
Der User zweite User kann die App dann zwar noch kurz starten erhält dann aber die Meldung das User XYZ schon damit arbeitet und die Session wird dann automatisch beendet.

Grüße Uwe
DerWoWusste
DerWoWusste 26.07.2016 um 18:40:02 Uhr
Goto Top
Hi Uwe.

Mal sehen, der Task würde also anspringen, wenn die RemoteApp gestartet würde (z.B. "Connect to user session" als Trigger, sofern der Nutzer nur diese eine App starten darf, oder per NTFS-Überwachung auf die .exe) und dann als Aktion die RemoteApp entfernen bzw. niemanden als zugriffsberechtigt eintragen über set-rdremoteapp oder remove-rdremopteapp. Ein weiterer Task, getriggert beim Abmelden oder ähnlichem, würde diese Beschränkungen dann wieder aufheben. Ja, das wird gehen.