Избиране на идентификационни данни за Java HTTP прокси от идентичността на предизвикателството
Съпоставете типа на заявителя, хоста и порта, преди да върнете акаунт; дръжте несвързаните сървърни предизвикателства извън тази справка.
За всяко обратно извикване за HTTP удостоверяване вземайте решението за идентификационни данни в този ред:
- Проверете, че заявителят е проксито, а не сървърът местоназначение.
- Съпоставете заявяваните хост и порт с одобрен запис за прокси.
- Върнете акаунта на този запис или не връщайте идентификационни данни при несъвпадащо предизвикателство.
Едно безусловно потребителско име/парола не може да изрази акаунтите на две проксита и може да ги изтече към друг получател.
Предпочитайте Authenticator, прикачен към клиента, когато използвате конструктора на HTTP клиент на Java. Authenticator по подразбиране на JVM засяга и друг участващ код.
Дефинирайте всяко съпоставяне на псевдоним на хост умишлено, вместо да приемате произволни имена. Това е HTTP модел; SOCKS може да използва друг път за реализация дори при подобно име на хост.
За диагностика записвайте типа на предизвикателството и идентификатора на съпоставения акаунт без неговата тайна. Това обяснява решението за обхвата без регистриране на пароли.