1

我有一个 Laravel 应用程序,它通过 Laravel Vapor 在 SQS 上运行排队的作业。这些作业必须连接到多个 AWS 服务(Vapor 自身范围之外的服务)。

我在此处使用基于 Laravel 的开发工具包说明发布了自定义 AWS 配置。我使用它配置的 IAM 用户具有访问所需服务的正确权限。在我的本地机器上同步运行时,作业成功。

但是,当作业通过 Vapor 在 SQS 上运行时,我收到一条错误消息,指出该作业laravel-vapor-role无权访问我的其他 AWS 服务。

由于我正在为 Laravel 使用 AWS-PHP-SDK,Vapor 会覆盖我的设置config/aws.php吗?作为记录,我像这样实例化一个 AWS 客户端:

$client = app()->make('aws')->createClient('service name');
4

1 回答 1

0

的,根据 steam 文档,有一个保留的环境变量列表(其中许多用于 AWS),这些变量可能会发生冲突:

_HANDLER
AWS_ACCESS_KEY_ID
AWS_DEFAULT_REGION
AWS_EXECUTION_ENV
AWS_LAMBDA_FUNCTION_MEMORY_SIZE
AWS_LAMBDA_FUNCTION_NAME
AWS_LAMBDA_FUNCTION_VERSION
AWS_LAMBDA_LOG_GROUP_NAME
AWS_LAMBDA_LOG_STREAM_NAME
AWS_LAMBDA_RUNTIME_API
AWS_REGION
AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN
LAMBDA_RUNTIME_DIR
LAMBDA_TASK_ROOT
TZ
于 2021-09-20T18:31:41.290 回答