Alle Wege führen zur RemoteApp

RemotePrograms.msc kennt ja jeder, weiß jetzt grad nicht ob sie das wegen des großen Erfolges so wie z.B. tsadmin.msc im Windows Server 2012 entsorgt haben.

Die die sich mit dem Thema schon mal befasst haben sind vermutlich auch schon über die WMI Klasse Win32_TSPublishedApplication gestolpert.

Im Rahmen eines Calls hat mir ein MS Supportler auch noch den wertvollen Tipp gegeben dass man doch auch mit den 2008R2 Tools remote arbeiten kann 😎

Neu war mir die zufällig gefundene Methode über den RDS-Provider in der Kraftmuschel.

Da das aber remote eher anstrengend, fehleranfällig und maximal unperformant ist habe ich mal auf Verdacht die Registry eines Terminalservers durchsucht und bin auf den Key HKLMSoftwareMicrosoftWindows NTCurrentVersionTerminal ServerTSAppAllowListApplications gestoßen. Im Endeffekt sind die ganzen anderen Methoden nichts anderes als Editoren für diesen Key und seine Subkeys (=RemoteApps). Die Werte Name und Path sind minimal notwendig, den Rest kann man ja via “Editor” erzeugen und rausfinden was welche Bedeutung hat 😀

Java CRL Checks einschalten

Wie wir heute gelernt haben prüft Java Zertifikate per Default nicht auf Revocation (CRL oder OCSP).

Abhilfe über Loginscript: AppData/Local AppData ermitteln (SpecialFolders oder HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerUser Shell FoldersLocalAppData, siehe auch unten) und dort eine Datei deployment.properties mit folgendem Inhalt erstellen/hin kopieren:

# Allow user to grant permissions to signed content (true by default)
deployment.security.askgrantdialog.show=true
# Allow user to grant permissions to content from an untrusted authority (true by default)
deployment.security.askgrantdialog.notinca=false
# Check publisher certificate for revocation (false by default)
deployment.security.validation.crl=true
# Enable online certificate validation (false by default)
deployment.security.validation.ocsp=true
Quelle

Vorsicht XP/2003 und Vista/7/8/2008/2008R2/2012 verhalten sich hier scheinbar unterschiedlich – bzw. tun dies auch verschiedene Java Versionen – sodass die Datei manchmal im Roaming Teil von AppData gesucht wird und manchmal im LocalLow Bereich (für den es weder einen SpecialFolder noch einen Registrykey gibt – ich hänge einfach “Low” and den bei LocalAppData ermittelten Pfad an). Einfach überall hinkopieren und man ist vor Überraschungen gefeit 😀

Tools

GARCopy – das Ding mit dem man (wenn man Administrator ist und es auch elevated startet) unabhängig von ACLs im Backupkontext Dinge kopieren kann.

GARDirSize – das Ding mit dem man (wenn man Administrator ist und es auch elevated startet) unabhängig von ACLs die Größe (Anzahl der Dateien+Bytes) eines Verzeichnisses ermitteln kann.

GARDelete – das Ding mit dem man (wenn man Administrator ist und es auch elevated startet) unabhängig von ACLs Verzeichnisse löschen kann.

IIS >= 6.0, ASP.NET und VMware.VimClient

Wie ich eben lernen musste kommt VMware.VimClient (Teil von Power CLI) ab 2003/IIS6 nicht mit den dort limitierten Stack von 256 KB (KB932909) zurecht.

Man kann das aber umgehen in dem man einen Thread mit entsprechendem Stack startet:


public void SomeHandler(object sender,EventArgs e)
{
Thread oWorker=new Thread(new ParameterizedThreadStart(SomeHandlerWorker),1024*1024*4); // 4 MB Stack
oWorker.Start(e);
oWorker.Join();
}
public void SomeHandlerWorker(object oPar)
{
EventArgs e=(EventArgs)oPar;

// do something great
}