Den authentifizierten Benutzernamen von Squid 7 an einen ICAP-Dienst übergeben
Aktivieren Sie die Weitergabe des Benutzernamens und einigen Sie sich auf den ICAP-Metadaten-Header und die Kodierung, die der Adaptionsdienst erwartet.
Ein ICAP-Dienst kann die authentifizierte Identität empfangen, die Squid kennt, aber beide Seiten müssen sich darüber einigen, wie diese Identität übertragen wird. Das bloße Benennen eines Headers aktiviert die Weitergabe des Benutzernamens nicht.
Für eine bestehende Squid 7-Installation mit ICAP-Unterstützung und Client-Authentifizierung können die relevanten Einstellungen lauten:
adaptation_send_username on
icap_client_username_header X-Authenticated-User
icap_client_username_encode off
Dies ergänzt den bestehenden ICAP-Dienst, die Adaptionsregeln und die Proxy-Zugriffskonfiguration. Es erstellt weder eine Authentifizierung noch einen Adaptionsdienst.
Die Eingabe des Dienstes berücksichtigen
Der Standard-Header für den Benutzernamen von Squid ist X-Client-Username. Wenn der Adapter X-Authenticated-User erwartet, ändern Sie den konfigurierten Namen von Squid wie oben oder konfigurieren Sie den Adapter so, dass er den Standard liest. Die Übereinstimmung von Header-Namen folgt den HTTP-Regeln ohne Beachtung der Groß- und Kleinschreibung.
Auch die Kodierung muss übereinstimmen. Bei aktiviertem icap_client_username_encode kodiert Squid den Wert in Base64. Der Dienst muss diese Darstellung dekodieren, anstatt sie als anderen Benutzernamen zu behandeln.
Dies sind Metadaten zum ICAP-Austausch zwischen Squid und seinem Dienst. Es ist keine Anweisung, einen Benutzeridentitäts-Header an jede Zielwebsite zu senden.
Wenn der Dienst weiterhin eine IP-Adresse meldet
Stellen Sie sicher, dass die Transaktion tatsächlich einen authentifizierten Benutzernamen bei Squid hat, dass die Weitergabe des Benutzernamens aktiviert ist und dass der Dienst den konfigurierten Header liest. Ein Rückfall des Adapters auf eine Client-Adresse belegt nicht, dass die Squid-Authentifizierung fehlgeschlagen ist; die Übergabe selbst kann fehlen oder falsch benannt sein.
Betrachten Sie diese Identität nur auf dem kontrollierten Pfad zwischen Squid und dem Adapter als vertrauenswürdig. Diese Direktiven sind versionsspezifisch: Die Konfigurationsreferenz führt sie für Squid 7 und frühere Linien auf und kennzeichnet sie in Squid 8 als nicht verfügbar.