Intereting Posts
Как получить результат ошибки unlink Как синхронизировать покупку iphone в приложении с веб-сайтом Лучший способ загрузить php-классы в EC2 – InstanceStore, EBS или S3? JQuery Ajax success: function () Почему соединение с ASE не выполняется, когда требуется шифрование пароля? как выполнить $ this-> render () внутри службы symfony2? cURL как прокси, обрабатывать метод HTTPS / CONNECT Различия между двумя регулярными выражениями JSON – косые черты не ускользают Первичный ключ + Компонентный первичный ключ, вызывающий проблему в схеме базы данных propel Неопределенный метод с библиотекой Composer и CodeIgniter Показывать количество заводов за категориями в боковой панели. CodeIgniter Eclipse PHP IDE – настраиваемые автоматически полные теги Phonegap В запрошенном ресурсе присутствует заголовок «Access-Control-Allow-Origin». Происхождение 'null', следовательно, не допускает доступа Динамическое добавление строк в таблицу HTML Использование JavaScript и получение значения текстового поля для каждого текстового поля путем отправки кнопки

Дайте разрешение на bjyauthorize для запуска приложения mvc ZF2 из CLI

У меня есть полностью запущенное приложение mvc на ZF2. Я хочу запустить некоторые действия из командной строки. Я правильно настроил свои консольные маршруты и другие среды. Когда я запускаю свое приложение из CLI, я получил исключение Permission denied, подобное этому:

'You are not authorized to access GeneratePdf\Controller\GeneratePdf\GeneratePdf:generate-all' in /var/www/zf2-reporting/module/BjyAuthorize/src/BjyAuthorize/Guard/Controller.php‌​:172 

У меня уже есть пользователь в моей базе данных. Как я могу использовать эти учетные данные для авторизации пользователя CLI для запуска действий?

Изменить :

Ниже приведен массив охранников в bjyauthorize.global.php для упомянутого контроллера.

 'guards' => array( 'BjyAuthorize\Guard\Controller' => array(array('controller' => 'GeneratePdf\Controller\GeneratePdf', 'roles' => array('admin', 'letters_admin')) 

Я также использовал ZfcUser. Как я могу передать учетные данные пользователя из CLI. Или, если есть какой-либо способ использовать сеанс пользователя из cli.

благодаря

Я нашел решение. Я не могу дать разрешение для пользователя cli, но это произошло, отключив bjyAuthorize во время работы от CLI.

Я нашел решение по этому вопросу: как использовать BjyAuthorize в приложении CLI ZF2?

Вот объяснение для других, если они нашли эту проблему:

Чтобы отключить bjyAuthorize во время работы из cli, мы можем сделать так, как показано ниже в application.config.php.

Не добавляйте сначала «BjyAuthorize» и «BjyProfiler» в ваш массив application.config.php. Проверьте консоль, если не консольный доступ, а затем добавьте их в $ config array.

 if (!Console::isConsole()) { array_unshift($config['modules'], 'BjyAuthorize'); array_unshift($config['modules'], 'BjyProfiler'); } return $config; 

Также необходимо проверить консоль в методе onBootstrap приложения / Module.php, как показано ниже.

 if (!Console::isConsole()) { $authorize = $sm->get('BjyAuthorize\Service\Authorize'); $acl = $authorize->getAcl(); $role = $authorize->getIdentity(); } 

И последнее, но не менее важное: не забудьте импортировать класс консоли:

 use Zend\Console\Console;