Новый пользователь не работает в приложении zf2 (bjyauthorize, zfcuser, zfcadmin и т. д.)
У меня есть приложение zf2 с несколькими пользователями, которые определены как администраторы. Я хочу добавить дополнительного администратора, но не смог заставить его работать. Я аутентифицируюсь с ZfcUserLdap. С существующим пользователем аутентификация проходит хорошо, и я получаю роль администратора; однако, с новым администратором я не получаю роль для / от bjyauthorize. Я считаю, что я не получаю роль из-за панели инструментов разработчика Zend (см. Ниже) и добавления следующего в ZfcUser\Controller\UserController:
var_dump($this->serviceLocator->get('BjyAuthorize\Provider\Identity\ProviderInterface')->getIdentityRoles()); die();
Приведенный выше код добавляется непосредственно перед прямым вызовом в конце действия входа в систему.
Кроме того, я использую инструменты Zend Developer, как отмечено здесь: Zend Framework 2 - BjyAuthorize всегда запрещает доступ. Для существующей учетной записи она показывает роль администратора после входа в систему. Для новой учетной записи она не показывает никакой роли; раздел роли пуст.
Я прочитал: " Никакая роль не обнаружена BjyAuthorize при входе в систему и правильно настроил пользователя в БД. В базе данных у меня есть новый пользователь-администратор, идентичный существующему пользователю-администратору. Таблицы user, user_role и user_role_linker максимально идентичны.
Мне что-то не хватает, чтобы новый пользователь мог получить роль и получить полномочия для прохождения защиты контроллера bjyauthorize.
Потенциально уместная информация о настройке:
application.config.php
$modules = array(
'Application',
'ZendDeveloperTools',
'BjyProfiler',
'ZfcTwitterBootstrap',
'ZfcBase',
'ZfcUser',
'ZfcUserLdap',
'BjyAuthorize',
'ZfcAdmin',
'Volunteer',
'Admin'
);
module.bjyauthorize.global.php
'identity_provider' => 'BjyAuthorize\Provider\Identity\ZfcUserZendDb',
'role_providers' => array(
// this will load roles from the user_role table in a database
// format: user_role(role_id(varchar), parent(varchar))
'BjyAuthorize\Provider\Role\ZendDb' => array(
'table' => 'user_role',
'role_id_field' => 'role_id',
'parent_role_field' => 'parent',
),
),
composer.json
{
"name": "zendframework/skeleton-application",
"description": "Skeleton Application for ZF2",
"license": "BSD-3-Clause",
"keywords": [
"framework",
"zf2"
],
"homepage": "http://framework.zend.com/",
"require": {
"php": ">=5.3.3",
"zendframework/zendframework": "2.*",
"zf-commons/zfc-base": "0.1.2",
"zf-commons/zfc-user": "dev-master",
"bjyoungblood/BjyAuthorize": "1.3.*@dev",
"zf-commons/zfc-admin": "dev-master",
"nitecon/zfcuser-ldap": "dev-master",
"mwillbanks/zfc-twitter-bootstrap": "dev-master",
"slm/google-analytics": "dev-master",
"zendframework/zftool": "dev-master"
}