Wenn Sie sichere, zuverlässige Verbindungen zu Ihren AlloyDB for PostgreSQL-Instanzen in Produktions- und Entwicklungsumgebungen aufrechterhalten möchten, sollten Sie diese Best Practices befolgen, wenn Sie den AlloyDB Auth-Proxy bereitstellen und verwalten.
Auth-Proxy-Client auf dem neuesten Stand halten
Google veröffentlicht monatlich neue Versionen des Auth-Proxys. Die aktuelle Version finden Sie auf der GitHub-Seite mit den Releases des AlloyDB Auth-Proxys.
Verwenden Sie die Automatisierung, um die Auth-Proxy-Version zu aktualisieren, und testen Sie die neue Version in Nicht-Produktionsumgebungen, bevor Sie die Änderung in die Produktion übernehmen.
Auth-Proxy-Client als persistenten Dienst oder Sidecar ausführen
In der Produktion sollten Sie den Auth-Proxy-Client als persistenten Dienst oder Sidecar ausführen.
Wenn der Auth-Proxy-Clientprozess beendet wird, werden alle darüber hergestellten Verbindungen ebenfalls beendet. Außerdem kann die Anwendung dann keine weiteren Verbindungen mit der AlloyDB-Instanz über den AlloyDB Auth-Proxy herstellen. Um dieses Szenario zu vermeiden, führen Sie den Auth-Proxy-Client als persistenten Dienst aus. Wenn der Auth-Proxy-Client dann aus irgendeinem Grund beendet wird, erfolgt automatisch ein Neustart.
Je nachdem, wo Sie den Client ausführen, haben Sie folgende Optionen:
- Verwenden Sie für Auth-Proxy-Clients, die auf Linux-VMs ausgeführt werden, einen Dienst wie
systemd,upstartodersupervisor. - Führen Sie für Windows-Arbeitslasten den Auth-Proxy-Client als Windows-Dienst aus. Weitere Informationen finden Sie unter Auth-Proxy als Windows-Dienst ausführen.
- Führen Sie bei Kubernetes-Einrichtungen den Auth-Proxy-Client als Sidecar aus.
Auth-Proxy-Client auf demselben Computer wie Ihre Arbeitslast ausführen
Der Auth-Proxy-Client geht davon aus, dass er auf demselben Computer wie die Arbeitslast ausgeführt wird. Der gesamte Client-Traffic zum Auth-Proxy ist unverschlüsselt. Der Traffic vom Auth-Proxy zu AlloyDB wird mit mTLS verschlüsselt.
Achten Sie darauf, dass sich alle Clients des Auth-Proxys auf demselben Computer befinden, damit kein unverschlüsselter Traffic den Computer verlässt. Der AlloyDB Auth-Proxy sollte sich am selben Ort wie ein Client befinden, der auf Ihre AlloyDB-Instanz zugreifen möchte.
Für jede Arbeitslast ein eigenes Dienstkonto verwenden
Der AlloyDB Auth-Proxy verwendet das IAM-Hauptkonto (Identity and Access Management) der Umgebung, um einen sicheren Tunnel zu einer AlloyDB-Instanz zu erstellen. Gemäß dem Prinzip der geringsten Berechtigung muss jede Arbeitslast, z. B. eine Webanwendung oder eine Anwendung zur Back-End-Datenverarbeitung, ein eigenes Dienstkonto verwenden. Durch die Verwendung eines separaten Dienstkontos können die Berechtigungen der einzelnen Arbeitslasten separat verwaltet (oder widerrufen) werden.
AlloyDB Auth-Proxy nicht als Engpass bereitstellen
Es kann verlockend sein, den AlloyDB Auth-Proxy auf einer freigegebenen VM bereitzustellen und damit den gesamten Traffic von einer Reihe von Arbeitslasten an Ihre AlloyDB-Instanz weiterzuleiten. Dieser Ansatz ist jedoch unsicher und schafft einen Single Point of Failure.
Wenn mehrere Clients denselben IAM-Hauptkonten verwenden, den der Auth-Proxy verwendet, ist es schwierig, die Arbeitslast zu identifizieren, die tatsächlich auf Ihre AlloyDB-Instanz zugreift. Dieser Ansatz ist daher unsicher.
Dieser Ansatz führt zu einem Single Point of Failure, da bei einer Überlastung des AlloyDB Auth-Proxys durch eine Traffic-Spitze alle Clientverbindungen beeinträchtigt werden.
Stellen Sie stattdessen einen Auth-Proxy-Client auf jedem Computer bereit, der eine sichere Verbindung benötigt, entweder als Sidecar oder als nichtflüchtigen Dienst.
Logausgabe des AlloyDB Auth-Proxys für Produktionsbereitstellungen reduzieren
Wenn Sie die Größe der AlloyDB Auth-Proxy-Logs begrenzen möchten, legen Sie beim Starten des AlloyDB Auth-Proxys die Option --verbose=false fest. Beachten Sie, dass die Verwendung dieser Option die Effizienz der AlloyDB Auth-Proxy-Ausgabe bei der Diagnose von Verbindungsproblemen herabsetzt.
Hilfemeldung zum AlloyDB Auth-Proxy lesen
Der AlloyDB Auth-Proxy bietet viele zusätzliche Funktionen und eine ausführliche Hilfemeldung mit Details. Führen Sie den Befehl alloydb-auth-proxy --help aus, um weitere Konfigurationsoptionen zu finden.
Mit dem Entwicklungsteam auf GitHub interagieren
Wenn Sie der Meinung sind, dass Sie einen Fehler gefunden haben, oder wenn Sie eine Feature Request haben, können Sie sich im AlloyDB Auth-Proxy-GitHub-Repository an das Entwicklungsteam wenden.