paeire/laravel-rds-proxy-iam 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

paeire/laravel-rds-proxy-iam

Composer 安装命令:

composer require paeire/laravel-rds-proxy-iam

包简介

README 文档

README

Librería para conectar Laravel a AWS RDS Proxy usando IAM DB Auth (sin credenciales estáticas).

Instalación

composer require paeire/laravel-rds-proxy-iam

Configuración base

En config/database.php:

'connections' => [
    'mysql' => [
        'driver' => 'mysql-iam-proxy',
        'host' => env('DB_HOST'),
        'port' => env('DB_PORT', 3306), // puerto local (túnel/proxy)
        'database' => env('DB_DATABASE'),
        'username' => env('DB_USERNAME'),

        // host/port usados para firmar el token IAM
        'token_host' => env('DB_TOKEN_HOST', env('DB_HOST')),
        'token_port' => env('DB_TOKEN_PORT', 3306),
        'aws_region' => env('AWS_REGION', 'us-east-1'),

        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
    ],
],

Orden de carga (importante)

El provider ahora registra el driver durante register() y engancha beforeResolving/afterResolving para cargarse lo antes posible.

Si tu aplicación resuelve DB muy temprano (en otro provider), registra este provider antes:

  • Laravel 11: en bootstrap/providers.php, coloca Paeire\RdsProxyIam\IamServiceProvider::class al inicio.
  • Laravel 10 o menor: en config/app.php, colócalo antes de providers que usen DB en register().

Seguridad y utilidades incluidas

  • Ya no se registran password ni token IAM en logs.
  • Validación estricta de configuración requerida.
  • Soporte TLS con ssl_ca y verificación (ssl_verify, default true).
  • connect_timeout (default 5).
  • force_readonly para reforzar sesión de solo lectura.
  • session_init_statements para ejecutar SQL al abrir conexión.

Opciones soportadas

Se pueden definir en la conexión de Laravel y, como fallback, por env:

  • host / DB_HOST
  • port / DB_PORT
  • database / DB_DATABASE
  • username / DB_USERNAME
  • token_host / DB_TOKEN_HOST
  • token_port / DB_TOKEN_PORT
  • aws_region / AWS_REGION
  • ssl_ca / DB_SSL_CA
  • ssl_verify / DB_SSL_VERIFY (true por defecto)
  • connect_timeout / DB_CONNECT_TIMEOUT (5 por defecto)
  • force_readonly / DB_FORCE_READONLY
  • session_init_statements / DB_SESSION_INIT_STATEMENTS (string con ; o array)
  • enable_cleartext_plugin (true por defecto)

统计信息

  • 总下载量: 585
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2025-09-23

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固