Die AlloyDB Language Connectors sind Bibliotheken, die das Herstellen sicherer Verbindungen zu Ihrem Cluster vereinfachen. Sie können Folgendes verwenden:
- Automatische mTLS-Verbindungen
- Unterstützung für die IAM-basierte Autorisierung (Identity and Access Management)
- Automatische IAM-Authentifizierung
AlloyDB Language Connectors können keinen Netzwerkpfad zu einem AlloyDB-Cluster bereitstellen, wenn noch kein Netzwerkpfad vorhanden ist.
Weitere Informationen zu AlloyDB-Sprach-Connectors finden Sie unter AlloyDB-Sprach-Connectors – Übersicht.
Auf dieser Seite werden die folgenden AlloyDB Language Connectors erläutert:
- Der AlloyDB Java-Connector
- Der AlloyDB Go-Connector
- Der AlloyDB-Python-Connector
Hinweise
Aktivieren Sie die AlloyDB Admin API.
Erstellen Sie eine AlloyDB-Instanz und konfigurieren Sie den Standardnutzer.
Weitere Informationen zum Erstellen einer Instanz finden Sie unter Primäre Instanz erstellen.
Weitere Informationen zu Nutzerrollen finden Sie unter Vordefinierte AlloyDB-IAM-Rollen.
Konfigurieren Sie die folgenden Rollen und Berechtigungen, die zum Herstellen einer Verbindung zu einer AlloyDB-Instanz erforderlich sind:
roles/alloydb.client
roles/serviceusage.serviceUsageConsumer
Weitere Informationen zu den erforderlichen Rollen und Berechtigungen finden Sie unter IAM-Authentifizierung verwalten.
AlloyDB Language Connectors installieren
Java
Der AlloyDB Java-Connector ist eine Bibliothek, die IAM-basierte Autorisierung und Verschlüsselung bietet, wenn eine Verbindung zu einer AlloyDB-Instanz hergestellt wird.
Installation
Bei Maven können Sie den AlloyDB Java Connector installieren, indem Sie der pom.xml
Ihres Projekts Folgendes hinzufügen:
<!-- Add the connector with the latest version -->
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>alloydb-jdbc-connector</artifactId>
<version>0.4.0</version>
</dependency>
<!-- Add the driver with the latest version -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>46.6.0<</version>
</dependency>
<!-- Add HikariCP with the latest version -->
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>5.1.0</version>
</dependency>
Für Gradle können Sie den AlloyDB Java Connector installieren, indem Sie Folgendes in die gradle.build
Ihres Projekts einfügen:
// Add connector with the latest version
implementation group: 'com.google.cloud.alloydb', name: 'alloydb-jdbc-connector', version: '0.4.0'
// Add driver with the latest version
implementation group: 'org.postgresql', name: 'postgresql', version: '46.6.0'
// Add HikariCP with the latest version
implementation group: 'com.zaxxer', name: 'HikariCP', version: '5.1.0'
Python (pg8000)
Der AlloyDB-Python-Connector ist eine Bibliothek, die neben einem Datenbanktreiber verwendet werden kann, um Nutzern mit ausreichenden Berechtigungen die Verbindung zu einer AlloyDB-Datenbank zu ermöglichen, ohne dass sie manuell IPs zulassen müssen.
Installation
Sie können die AlloyDB Python Connector-Bibliothek mit pip install
installieren.
Wenn Sie pg8000 verwenden, führen Sie den folgenden Befehl aus:
pip install "google-cloud-alloydb-connector[pg8000]" sqlalchemy
Python (asyncpg)
Der AlloyDB-Python-Connector ist eine Bibliothek, die neben einem Datenbanktreiber verwendet werden kann, um Nutzern mit ausreichenden Berechtigungen die Verbindung zu einer AlloyDB-Datenbank zu ermöglichen, ohne dass sie manuell IPs zulassen müssen.
Installation
Sie können die AlloyDB Python Connector-Bibliothek mit pip install
installieren.
Wenn Sie asyncpg verwenden, führen Sie den folgenden Befehl aus:
Für asyncpg:
pip install "google-cloud-alloydb-connector[asyncpg]" "sqlalchemy[asyncio]"
Weitere Informationen zur Verwendung asynchroner Treiber finden Sie unter Async Driver Usage (Verwendung asynchroner Treiber).
Go (pgx)
Der AlloyDB Go-Connector ist ein AlloyDB-Connector, der für die Verwendung mit der Go-Sprache entwickelt wurde.
Installation
Sie können den AlloyDB Go-Connector mit go get
installieren.
Wenn Sie pgx verwenden, führen Sie den folgenden Befehl aus:
go get github.com/jackc/pgx/v5
go get cloud.google.com/go/alloydbconn
Go (database/sql)
Der AlloyDB Go-Connector ist ein AlloyDB-Connector, der für die Verwendung mit der Go-Sprache entwickelt wurde.
Installation
Sie können den AlloyDB Go-Connector mit go get
installieren.
Wenn Sie database/sql verwenden, führen Sie den folgenden Befehl aus:
go get cloud.google.com/go/alloydbconn
AlloyDB-Sprachconnectors konfigurieren
Java
Wenn Sie den AlloyDB Java-Connector verwenden möchten, um eine Verbindung zu Ihrem AlloyDB-Cluster herzustellen, konfigurieren Sie ihn mit den folgenden Schritten.
Wenn Sie dieses Snippet im Kontext einer Webanwendung verwenden möchten, rufen Sie die README-Datei auf GitHub auf.
Öffentliche IP-Adresse verwenden
Wenn Sie eine öffentliche IP-Adresse für die Verbindung zu Ihrem AlloyDB-Cluster verwenden, geben Sie Folgendes an:
config.addDataSourceProperty("alloydbIpType", "PUBLIC");
Private Service Connect verwenden
Wenn Sie Private Service Connect verwenden, um eine Verbindung zu Ihrer AlloyDB-Instanz herzustellen, geben Sie Folgendes an:
config.addDataSourceProperty("alloydbIpType", "PSC");
Automatische IAM-Authentifizierung
Standardmäßig verwenden AlloyDB Language Connectors die integrierte Authentifizierung. Sie können die automatische IAM-Authentifizierung mit dem AlloyDB Java-Connector verwenden. Fügen Sie Folgendes hinzu, um die Funktion zu aktivieren:
config.addDataSourceProperty("alloydbEnableIAMAuth", "true");
Python (pg8000)
Wenn Sie den AlloyDB Python-Connector verwenden möchten, um eine Verbindung zu Ihrem AlloyDB-Cluster herzustellen, konfigurieren Sie den Connector mit den folgenden Schritten, wenn Sie pg8000
verwenden.
Wenn Sie dieses Snippet im Kontext einer Webanwendung verwenden möchten, rufen Sie die README-Datei auf GitHub auf.
Öffentliche IP-Adresse verwenden
Wenn Sie eine öffentliche IP-Adresse für die Verbindung zu Ihrem AlloyDB-Cluster verwenden, ersetzen Sie die Verbindungsfunktion durch Folgendes:
def getconn() -> pg8000.dbapi.Connection:
conn: pg8000.dbapi.Connection = connector.connect(
inst_uri,
"pg8000",
user=user,
password=password,
db=db,
# use ip_type to specify public IP
ip_type=IPTypes.PUBLIC,
)
return conn
Private Service Connect verwenden
Wenn Sie Private Service Connect verwenden, um eine Verbindung zu Ihrer AlloyDB-Instanz herzustellen, geben Sie Folgendes an:
def getconn() -> pg8000.dbapi.Connection:
conn: pg8000.dbapi.Connection = connector.connect(
inst_uri,
"pg8000",
user=user,
password=password,
db=db,
# use ip_type to specify PSC
ip_type=IPTypes.PSC,
)
return conn
Automatische IAM-Authentifizierung
Standardmäßig verwenden AlloyDB Language Connectors die integrierte Authentifizierung. Sie können die automatische IAM-Authentifizierung mit dem AlloyDB Python-Connector verwenden. Ersetzen Sie zum Aktivieren die Verbindungsfunktion durch Folgendes:
def getconn() -> pg8000.dbapi.Connection:
conn: pg8000.dbapi.Connection = connector.connect(
inst_uri,
"pg8000",
user=user,
password=password,
db=db,
# use enable_iam_auth to enable IAM authentication
enable_iam_auth=True,
)
return conn
Python (asyncpg)
Wenn Sie den AlloyDB Python-Connector verwenden möchten, um eine Verbindung zu Ihrem AlloyDB-Cluster herzustellen, konfigurieren Sie den Connector mit den folgenden Schritten, wenn Sie async
verwenden.
Wenn Sie dieses Snippet im Kontext einer Webanwendung verwenden möchten, rufen Sie die README-Datei auf GitHub auf.
Öffentliche IP-Adresse verwenden
Wenn Sie eine öffentliche IP-Adresse für die Verbindung zu Ihrem AlloyDB-Cluster verwenden, ersetzen Sie die Verbindungsfunktion durch Folgendes:
async def getconn() -> asyncpg.Connection:
conn: asyncpg.Connection = await connector.connect(
inst_uri,
"asyncpg",
user=user,
password=password,
db=db,
# use ip_type to specify public IP
ip_type=IPTypes.PUBLIC,
)
return conn
Private Service Connect verwenden
Wenn Sie Private Service Connect verwenden, um eine Verbindung zu Ihrer AlloyDB-Instanz herzustellen, geben Sie Folgendes an:
async def getconn() -> asyncpg.Connection:
conn: asyncpg.Connection = await connector.connect(
inst_uri,
"asyncpg",
user=user,
password=password,
db=db,
# use ip_type to specify PSC
ip_type=IPTypes.PSC,
)
return conn
Automatische IAM-Authentifizierung
Standardmäßig verwenden AlloyDB Language Connectors die integrierte Authentifizierung. Sie können die automatische IAM-Authentifizierung mit dem AlloyDB Python-Connector verwenden. Ersetzen Sie zum Aktivieren die Verbindungsfunktion durch Folgendes:
async def getconn() -> asyncpg.Connection:
conn: asyncpg.Connection = await connector.connect(
inst_uri,
"asyncpg",
user=user,
password=password,
db=db,
# use enable_iam_auth to enable IAM authentication
enable_iam_auth=True,
)
return conn
Go (pgx)
Wenn Sie den AlloyDB Go Connector verwenden möchten, um eine Verbindung zu Ihrem AlloyDB-Cluster herzustellen, konfigurieren Sie den Connector mit den folgenden Schritten, wenn Sie pgx
verwenden.
Wenn Sie dieses Snippet im Kontext einer Webanwendung verwenden möchten, rufen Sie die README-Datei auf GitHub auf.
Öffentliche IP-Adresse verwenden
Wenn Sie eine öffentliche IP-Adresse für die Verbindung mit Ihrem AlloyDB-Cluster verwenden, ersetzen Sie die d.Dial
-Funktion durch Folgendes:
d.Dial(ctx, instURI, alloydbconn.WithPublicIP())
Private Service Connect verwenden
Wenn Sie Private Service Connect verwenden, um eine Verbindung zu Ihrer AlloyDB-Instanz herzustellen, geben Sie Folgendes an:
d.Dial(ctx, instURI, alloydbconn.WithPSC())
Automatische IAM-Authentifizierung
Standardmäßig verwenden AlloyDB Language Connectors die integrierte Authentifizierung.
Sie können die automatische IAM-Authentifizierung mit dem AlloyDB Go-Connector verwenden. Wenn Sie die Funktion aktivieren möchten, ersetzen Sie die Funktion alloydbconn.NewDialer
durch Folgendes:
d, err := alloydbconn.NewDialer(ctx, alloydbconn.WithIAMAuthN())
Go (database/sql)
Wenn Sie den AlloyDB Go-Connector verwenden möchten, um eine Verbindung zu Ihrem AlloyDB-Cluster herzustellen, konfigurieren Sie den Connector mit den folgenden Schritten, wenn Sie database/sql
verwenden.
Wenn Sie dieses Snippet im Kontext einer Webanwendung verwenden möchten, rufen Sie die README-Datei auf GitHub auf.
Öffentliche IP-Adresse verwenden
Wenn Sie eine öffentliche IP-Adresse für die Verbindung mit Ihrem AlloyDB-Cluster verwenden, ersetzen Sie die RegisterDriver
-Funktion durch Folgendes:
cleanup, err := pgxv5.RegisterDriver(
"alloydb",
alloydbconn.WithDefaultDialOptions(alloydbconn.WithPublicIP())
)
Private Service Connect verwenden
Wenn Sie Private Service Connect verwenden, um eine Verbindung zu Ihrer AlloyDB-Instanz herzustellen, geben Sie Folgendes an:
cleanup, err := pgxv5.RegisterDriver(
"alloydb",
alloydbconn.WithDefaultDialOptions(alloydbconn.WithPSC())
)
Automatische IAM-Authentifizierung
Standardmäßig verwenden AlloyDB Language Connectors die integrierte Authentifizierung.
Sie können die automatische IAM-Authentifizierung mit dem AlloyDB Go-Connector verwenden. Ersetzen Sie zum Aktivieren die RegisterDriver
-Funktion durch Folgendes:
cleanup, err := pgxv4.RegisterDriver(
"alloydb",
alloydbconn.WithIAMAuthN()
)