Я работаю над существующим проектом, в котором есть две области, в которые можно войти. Раздел администратора и интерфейс.
В настоящее время в разделе администратора есть действие для входа в систему, а для внешнего интерфейса - собственное действие для входа в систему. Администратор входит в систему с использованием таблицы базы данных специально для учетных записей администраторов, а внешний интерфейс - с использованием другой таблицы.
Если администратор вошел в систему и пытается затем войти во внешний интерфейс, им предлагается войти в систему как пользовательский интерфейс (необходимо, потому что пользовательские интерфейсы получают совершенно другой контент в зависимости от проектов, с которыми они связаны, а администратор - нет). связан с одним конкретным проектом).
После того, как вы вошли в систему как пользователь переднего плана, его учетные данные администратора пропали, и им придется снова войти в систему, если они попытаются повторно войти в раздел администратора.
Я хочу сделать так, чтобы администратор мог войти в раздел администрирования и войти в систему как определенный пользователь переднего плана. Таким образом, можно переключаться между двумя разделами сайта. без повторного входа.
Как лучше всего справиться с этим в Zend Framework?
Пока что я думаю о том, чтобы потерять отдельные действия при входе в систему и иметь только одно (нет необходимости в двух, верно?), А затем мне приходится иметь дело с разрешением раздельных учетных данных.
В настоящее время вход в систему как пользователь переднего плана приводит к тому, что пользователю с правами администратора необходимо войти в систему, чтобы получить доступ к области администратора. Это потому, что некоторые учетные данные $ _SESSION перезаписываются? Нужно ли каким-то образом создавать собственную переменную $ _SESSION, чтобы справиться с этим способом ZF?
Очевидно, что я не могу просто напрямую присвоить значение $ _SESSION ['front_end'] или $ _SESSION ['admin'] (что я бы сделал в тот день), так как бы я сделал это в Zend Framework?
Спасибо!