在php league oauth2服务器的安全性改进之后,Laravel护照授权失败。
例外说
您必须设置加密密钥以提高安全性 此库的内容 - 有关详细信息,请参阅此页面 https://oauth2.thephpleague.com/v5-security-improvements/
根据他们的文档,必须设置加密密钥。
即
new FileInputStream(new File("Data3.txt"))
但是Laravel护照当前版本不包含此修复程序。
我所做的是手动将setEncryptionKey()添加到
/vendor/laravel/passport/src/PassportServiceProvider.php
// Setup the authorization server
$server = new AuthorizationServer(
$clientRepository,
$accessTokenRepository,
$scopeRepository,
$privateKeyPath,
$publicKeyPath
);
$server->setEncryptionKey('lxZFUEsBCJ2Yb14IF2ygAHI5N4+ZAUXXaSeeJm6+twsUmIen');
这对我有用。但从技术上讲,我无法编辑此文件。对此有什么合适的解决方法吗?
答案 0 :(得分:1)
试试这个......
sudo chown www-data:www-data storage/oauth-*.key
sudo chmod 600 storage/oauth-*.key
它解决了我的问题
答案 1 :(得分:0)