我正在使用Laravel 5.7和Passport为在Elastic Beanstalk上托管的API提供OAuth身份验证。我的问题是,由于负载均衡器有多个实例,每个实例具有一组不同的Oauth密钥,因此在命中一个端点时,该API随机地(取决于它命中的实例)未经身份验证。
对此,我的解决方案是将密钥存储在S3上,并使用Passport的loadKeysFrom
方法从那里获取密钥。
与此有关的问题是,URL似乎以file://
开头。这是我的代码:
Passport::loadKeysFrom(Storage::disk('s3')->url('/oauthkeys'));
这会产生错误:
键路径“ file:// https://my-url.s3-eu-central-1.amazonaws.com/oauthkeys/oauth-private.key”不存在或不可读