PAC правило за кратки имиња може да го заобиколи вашиот прокси
Разберете зошто име без точка и неговата целосно квалификувана форма можат да изберат различни рути во истиот PAC скрипт.
PAC скриптата го добива името на домаќинот од URL-то. dashboard не станува автоматски dashboard.example.internal пред совпаѓањето:
function FindProxyForURL(url, host) {
if (isPlainHostName(host)) {
return "DIRECT";
}
return "PROXY 203.0.113.10:8080";
}
Користете вистинска HTTP крајна точка наместо адресата од документацијата; списокот на HTTP прокси нуди кандидати за тестови со јавна дестинација каде што таа рута е дозволена. Во оваа скрипта, краткото име намерно враќа DIRECT; целосно квалификуваното име стигнува до гранката за прокси. „Обично име на домаќин“ значи правопис без точка, а не утврдување дека домаќинот е на доверлива локална мрежа.
Ако саканата политика е еден внатрешен домен, совпаѓајте го тој домен наместо секое кратко име. dnsDomainIs и shExpMatch имаат различни влезови и семантика на шаблонот. Проверката на наставка за .example.internal не го вклучува точниот корен example.internal; вклучете го тој случај експлицитно кога е наменето. Шаблон во стил на школка не е IP подмрежа или регуларен израз.
Споредете го резултатот на скриптата за краткото име, целосно квалификуваното име, не поврзан јавен домаќин и секој предвиден корен на домен. Ова го тестира изборот на правило без поврзување со проксито. Проверете го првото правило што враќа резултат кога широка гранка DIRECT спречува да се обиде инаку достапна крајна точка.
Користете споредба на имиња кога ја изразува политиката; DNS помагачите додаваат свои пребарувања и одложување. Одржувајте го имплицитното локално заобиколување на прелистувачот одвоено од скриптата. Проверката на localhost не може да го замени вистинскиот правопис на јавната или внатрешната дестинација.