Авторизация и белые списки IP
Всё авторизуется по логину и паролю. Резидентские списки дополнительно умеют доверять адресам ваших серверов без учётных данных.
Учётные данные
Вариант по умолчанию, работающий откуда угодно. В HTTP они едут в заголовке Proxy-Authorization, в SOCKS5 являются частью рукопожатия, поэтому клиенты спрашивают их отдельно от URL.
Отказ возвращает 407, и он приходит от нас. Ответ 401 приходит от адресата. Умение их различать экономит большую часть времени, которое люди тратят на отладку не той системы.
Белый список
Резидентские списки принимают набор адресов, которым разрешено подключаться без учётных данных. Существует это в основном ради инструментов, которые не умеют отправлять авторизацию прокси вовсе, и типовой пример это Selenium.
Вносите серверы, а не ноутбуки. Домашнее подключение регулярно меняет адрес, и отказ выглядит как сбой прокси, а не как устаревшая запись в списке.
Управление списком
GET /api/v1/user/residential/whitelist
POST /api/v1/user/residential/whitelist
# Keep credentials working as well: if the whitelist is your only
# path and the server address changes, you lose access entirely.Что какой продукт поддерживает
Резидентка поддерживает и учётные данные, и белый список. ISP, датацентр, IPv6 и мобильные авторизуются только по учётным данным.
На общем или облачном хосте помните, что адрес может быть не только вашим. Любой, кто может отправить трафик с внесённого адреса, наследует ваш доступ, поэтому на многопользовательских машинах лучше учётные данные.
Каким инструментам что нужно
Большинство клиентов работает с учётными данными без возражений. Короткий список не работает, и знание, кто именно, экономит вечер.
Отдельный случай это Selenium: ни Chrome, ни Firefox не принимают учётные данные прокси через штатную настройку, поэтому либо этим занимается selenium-wire, либо машина вносится в белый список.
Поддержка учётных данных по инструментам
requests, httpx, curl, Scrapy credentials in the URL, fine
Playwright username and password fields
Puppeteer page.authenticate, per page
Selenium no native support: selenium-wire,
a generated extension, or whitelisting
Antidetect browsers credential fields in the profile form