빈 비밀번호를 쓰는 HTTP Basic 프록시 인증
업스트림 프록시가 API 키를 Basic 인증 사용자 이름으로 쓸 때 빈 비밀번호 구분자를 알아본다.
login=API_KEY: 에서 마지막 콜론은 비밀번호가 비어 있다는 뜻일 수 있다. HTTP Basic 자격 증명은 사용자 이름, 콜론, 비밀번호로 이루어진다. 서비스가 API 키를 사용자 이름으로 지정하고 비밀번호를 비워 두면 그 쌍은 API_KEY: 이며, 콜론은 계정 키의 일부가 아니다.
이 해석으로 서비스 계약을 지켜야 한다. 다른 서비스는 토큰을 비밀번호 필드에 넣거나 다른 인증 방식을 쓸 수 있다. 끝의 콜론만으로는 그 서버가 무엇을 기대하는지 알 수 없다.
Squid 의 cache_peer 로그인 문법도 프록시 URL 의 사용자 정보 문법과 다르다. 예약 문자는 한 인터페이스에서는 URL 인코딩이, 다른 쪽에서는 다른 인용 방식이 필요할 수 있다. 실제 설정의 규칙을 지켜야 한다.
상위 프록시로 가는 TLS 는 별개의 선택이다. 그 전송 방식을 바꾼다고 Basic 자격 증명 쌍이 달라지지 않고, 대상 사이트가 HTTPS 를 쓰는지도 결정되지 않는다.