You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot通过IAM认证连接PostgreSQL时出现认证失败问题

问题:GCP Cloud SQL IAM认证连接失败

尝试通过IAM认证连接GCP Cloud SQL时遭遇认证失败,已在GCP控制台反复确认账号名称无误。

报错日志

2022-12-22 09:54:23.333 ERROR 66136 --- [           main] com.zaxxer.hikari.pool.HikariPool        : APPHikariCP - Exception during pool initialization.
org.postgresql.util.PSQLException: FATAL: Cloud SQL IAM service account authentication failed for user "account@account.iam"
    at org.postgresql.core.v3.ConnectionFactoryImpl.doAuthentication(ConnectionFactoryImpl.java:613) ~[postgresql-42.2.18.jar:42.2.18]
    at org.postgresql.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:161) ~[postgresql-42.2.18.jar:42.2.18]
    at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:213) ~[postgresql-42.2.18.jar:42.2.18]
    at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:51) ~[postgresql-42.2.18.jar:42.2.18]
    at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:225) ~[postgresql-42.2.18.jar:42.2.18]
    at org.postgresql.Driver.makeConnection(Driver.java:465) ~[postgresql-42.2.18.jar:42.2.18]
    at org.postgresql.Driver.connect(Driver.java:264) ~[postgresql-42.2.18.jar:42.2.18]

    [...]

配置文件详情

spring:
  profiles:
    active: postgresql
  cloud:
    gcp:
      sql:
        enabled: true
        database-name: ${DB_NAME:appdbname}
        instance-connection-name: ${INSTANCE_NAME}
      credentials:
        location: file:${SERVICE_ACCOUNT_JSON}
  groovy:
    template:
      check-template-location: false
  datasource:
    hikari:
      minimum-idle: ${CP_MIN_IDLE:5}
      maximum-pool-size: ${CP_MAX_POOL_SIZE:20}
      pool-name: APPHikariCP
      max-lifetime: ${CP_MAX_LIFETIME:3540000}
      data-source-properties:
        socketFactory: ${DATA_SOURCE_SOCKET_FACTORY}
        cloudSqlInstance: ${DATA_SOURCE_CLOUD_SQL_INSTANCE}
        enableIamAuth: true
        sslmode: disable
    url: ${SPRING_DATA_SOURCE_URL}
    driver-class-name: ${DB_DRIVER_CLASS_NAME}
    username: ${DATA_SOURCE_USERNAME_IAM}
    password: ${DATA_SOURCE_PASSWORD}

内容的提问来源于stack exchange,提问作者DGM.-

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 01:15:31