Příznaky
Adresa URL a Název cílového hostitele sloupce v protokolu web proxy v Microsoft Forefront Threat Management brány 2010 může být zobrazen jako nečitelné hodnoty. K tomuto problému dochází, když uživatelé přístup k webům pomocí mezinárodní domény název (IDN) a položky protokolu jsou načteny z disku. Poznámka: IDNs jsou názvy domén, které mohou obsahovat znaky Unicode a jsou přístupné pomocí Punycode přepis. Hrozby správa brány převede název Punycode vyjádření Unicode při položky protokolu jsou zobrazeny v zobrazení protokolování modulu snap-in Správa TMG Forefront z konzola Microsoft Management Console (MMC). Však pokud položky protokolu jsou načteny z disku, všechny jiné znaky než ASCII kódování Unicode řetězce nahrazeny otazníkem (?), jak je vysvětleno v části "Příčina".
Příčina
K tomuto problému dochází, protože sloupce protokolování v ohrožení správa brány jsou uloženy ve formátu ASCII a záznamy protokolu zapsány na disk, hodnoty, Adresa URL a Název cílového hostitele sloupce budou převedeny ze standardu Unicode na ASCII. To způsobí, že všechny hodnoty jiné než ASCII hodnoty mají být nahrazeny otazníkem (?).
Řešení
Chcete-li vyřešit tento problém, nainstalujte 4 kumulativní pro Forefront Threat Management brány 2010 Service Pack 2 a potom spusťte skript v části "Další informace".
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.
Další informace
Zkopírujte a vložte následující skript v Notepad.exe a poté uložte soubor jako "SetPersistLogAsPunycode.vbs."
'Define the constants needed.Const strVpsGUID = "{143F5698-103B-12D4-FF34-1F34767DEABC}"Const strVpsPropertyName = "PersistLogAsPunycode"Const Error_FileNotFound = &H80070002Set objArgs = wscript.ArgumentsfInvalidParameterValue = Falseif objArgs.Count > 0 then if objArgs(0) = "0" then fPersistLogAsPunycode = False elseif objArgs(0) = "1" then fPersistLogAsPunycode = True else fInvalidParameterValue = True end ifend ifif objArgs.Count <> 1 or fInvalidParameterValue then wscript.echo "Usage: SetPersistLogAsPunycode.vbs <0|1>" wscript.echo wscript.echo "Control how log fields that may contain punycode-encoded parts are" wscript.echo "stored in the persistent log." wscript.echo wscript.echo " 0 - Persist the applicable log fields as ASCII (the default behavior)" wscript.echo " 1 - Persist the applicable log fields as Punycode" wscript.Quit 2end ifset objLogging = CreateObject("FPC.Root").GetContainingArray().LoggingSet objVPSet = OpenVPSet(objLogging, strVpsGUID)objVPSet.Value(strVpsPropertyName) = fPersistLogAsPunycodeobjLogging.Savefunction OpenVPSet(objParent, strVpsGUID) Set objVPSets = objParent.VendorParametersSets On Error Resume Next Set OpenVPSet = objVPSets.Item(strVpsGUID) ' Save the Err properties in case it needs to be re-raised errNumber = Err.Number errSource = Err.Source errDescription = Err.Description errHelpFile = Err.HelpFile errHelpContext = Err.HelpContext On Error GoTo 0 if errNumber = Error_FileNotFound Then Set OpenVPSet = objVPSets.Add(strVpsGUID) Elseif errNumber < 0 Then ' An error other than "file not found" occured -- re-raise the error, ' this time not under "On Error Resume Next" Err.Raise errNumber, errSource, errDescription, errHelpFile, errHelpContext End Ifend function
Hrozby správa brány uchovávat položky protokolu jako Punycode hodnoty povolit, spusťte následující příkaz:
cscript.exe SetPersistLogAsPunycode.vbs 1Pokud chcete vrátit ohrožení správa brány k jeho výchozí chování protokolování polí jako ASCII znaky, spusťte následující příkaz:
cscript.exe SetPersistLogAsPunycode.vbs 0
Odkazy
Naleznete terminologie společnost Microsoft používá k popisu aktualizací softwaru.