GoogleCloudPlatform / GoogleCloudPlatform/cloud-sql-proxy

Authentication Issue When Connecting Through Bastion Host and IAP

Abierto
#2,405 7 comentarios 0 reacciones 1 asignado Reclamado por @hessjcg Ver en GitHub
priority: p2 type: feature request
Lenguaje dominante
Go
Estrellas
1.4k
Forks
352
Merge medio
14 h 54 min
PR fusionados (30 d)
5

Descripción

### Question

## Environment
- Google Cloud Platform (GCP)
- Cloud SQL PostgreSQL instance with private IP only
- Bastion host with private IP only
- Identity-Aware Proxy (IAP) for bastion host access
- DBeaver as SQL client

## Problem
I'm trying to connect to a PostgreSQL instance in Google Cloud SQL from my local machine. The database has only a private IP address, so I'm using a bastion host to access it.

Bastion has a systemd service that is using
```
/usr/local/bin/cloud-sql-proxy --auto-iam-authn --private-ip --address 0.0.0.0 --port 3307 [connection-string]
```

I've set up IAP TCP forwarding to the bastion host with this command:
```
gcloud compute start-iap-tunnel [bastion-name] 3307 --local-host-port=localhost:5432 --zone=[zone]
```

When I try to connect through DBeaver using:
- Host: localhost
- Port: 5432
- Database: db_name
- Username: myname@company.com
- Password: (empty)

I receive the following error:
```
FATAL: Cloud SQL IAM user authentication failed for user "myname@company.com"
```

This setup previously worked when I was using cloud-sql-proxy locally. However, now that cloud-sql-proxy is running on the bastion host, the authentication fails.

## What I've tried
I've confirmed that my user account has the necessary IAM permissions and has been added to Cloud SQL. The direct connection using cloud-sql-proxy from my local machine worked before, but I need to route through the bastion host now.

What might be causing this authentication failure, and how can I properly configure the connection to maintain IAM authentication while going through the bastion host?

### Code

```Go

```

### Additional Details

_No response_

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.