Я установил и настроил паспорт, и, кажется, все работает достаточно хорошо, пока я не захотел выполнить развертывание на бессерверной основе (Lambda).
Я сгенерировал свои ключи с помощью artisan Passport:install и опубликовал конфигурацию паспорта от поставщика.Проблема заключается в том, что после публикации файла конфигурации поставщика (passport.php) и удаления
Passport::loadKeysFrom('storage');
из AppServiceProvider.php
Я не могу загрузить ключи (открытые и частные) из хранилища, и это из-за эти строки в файле конфигурации паспорта.php
'private_key' => env('PASSPORT_PRIVATE_KEY'),
' public_key' => env('PASSPORT_PUBLIC_KEY'),
Из-за этих строк паспорт laravel ожидает, что ключи будут установлены в файле .env, теперь Я могу сделать это и заставить его работать локально, но когда я нажимаю использовать ssm для загрузки секретов из aws во время развертывания, как описано здесь https://bref.sh/docs/environment/variables, бессерверный режим завершается с ошибкой, потому что мой файл serverless.yml Содержимое переменных среды превышает 5000 байт.
Я пробовал использовать aws ssm с «composer require bref/secrets-loader» для загрузки секретов из ssm во время выполнения, мне удалось развернуть код, но затем сервер продолжает отвечать с ошибкой «Служба недоступна 503», потому что для запуска требуется больше времени, поскольку он загружает переменные ssm во время холодного запуска, поэтому я решил, что это не будет оптимальным.
Лучший у меня это работает, так это загружать ключи в AppServiceProvider.php с помощью
Passport::loadKeysFrom('storage');
из каталога хранилища, но это не удается просто потому, что я опубликовал паспорт.php для конфигурации от поставщика, и эти строки ожидают ключи из .env, поэтому Passport::loadKeysFrom('storage '); не работает.
это строки в файле паспорта.php, вызывающие эту ошибку, и я не нашел способа ее обойти.
'private_key ' => env('PASSPORT_PRIVATE_KEY'),
'public_key' => env('PASSPORT_PUBLIC_KEY'),
Мне может пригодиться какое-нибудь руководство чтобы заставить паспорт работать на aws Lambda с помощью bref.
Подробнее здесь: https://stackoverflow.com/questions/785 ... rt-php-con
Загрузка открытых и закрытых ключей Laravel Passport не будет работать с опубликованной конфигурацией паспорта.php ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение