Befehle des Menübands überspringen
Zum Hauptinhalt wechseln
SF Software-Beratung

Gegeben:

Problem:

Das Betrachten der Firewallprotokolle in die Vergangenheit schlägt mitunter mit einem von zwei Symptomen fehl:

  • Entweder erscheinen keine Ergebnisse,
  • oder die Abfrage bricht mit einer Fehlermeldung ab.

Ursache:

Mit dem Microsoft-Support untersuchten wir das Phänomen. Die Ursache ist, dass TMG bei den Abfragen an den für die Protokollierung verwendeten Microsoft SQL Server den abzufragenden Datum-/Uhrzeit-Bereich in einem SQL Statement in der Landessprache formatiert, in der die Verbindung zum SQL Server hergestellt wird. Das ist bei einer deutschsprachigen Installation standardmäßig deutsch und deshalb im Format Tag/Monat/Jahr.

SQL interpretiert das Statement aber grundsätzlich englisch (was korrekt ist). Dort gilt Monat/Tag/Jahr als Reihenfolge. Deshalb werden Tag und Monat verwechselt. Bei Tagen nach dem 12. eines Monats wird also eine Zahl größer als 12 als Monat verstanden und führt zu einer Fehlermeldung. Bei Tagen bis zum 12. eines Monats erscheinen keine oder die falschen Ergebnisse.

Behelfslösung:

Stellen Sie wie folgt die Landessprache des Kontos, mit dem TMG zum SQL Server verbindet, auf Schwedisch ein. Dort gilt die Reihenfolge JMT, und das wird vom SQL Server korrekt verstanden. Sie können dazu das Befehlszeilentool sqlcmd.exe wie folgt verwenden:

PS C:\Program Files\Microsoft SQL Server\100\Tools\Binn> .\sqlcmd -S .\MSFW -E
1> ALTER LOGIN [NT-AUTORITÄT\NETZWERKDIENST] WITH DEFAULT_LANGUAGE = [Swedish]
2> GO
1> QUIT
PS C:\Program Files\Microsoft SQL Server\100\Tools\Binn>

Danach funktioniert das Abfragen des Protokolls in die Vergangenheit wieder. Vermutlich wird das Service Pack 2 für den TMG 2010 eine Korrektur erhalten, so dass diese Behelfslösung dann nicht mehr notwendig ist.

Voilà.