Magento2:Como obter detalhes do usuário administrador atual?
-
29-09-2020 - |
Pergunta
Como obter os detalhes do usuário administrador atual no back-end?
Solução
você precisa adicionar isso ao construtor da sua classe
protected $authSession;
public function __construct(
....
\Magento\Backend\Model\Auth\Session $authSession,
....
) {
....
$this->authSession = $authSession;
....
}
Então crie este método
public function getCurrentUser()
{
return $this->authSession->getUser();
}
isso lhe dará o administrador atualmente conectado.
Mais tarde, você pode obter detalhes como $user->getUsername()
ou $user->getEmail()
.
Outras dicas
Como obter detalhes do usuário administrador atual?
injetar sessão de back-end em seu controlador
public function __construct(
....
\Magento\Backend\Model\Auth\Session $authSession,
....
) {
....
$this->authSession = $authSession;
....
}
e use isso para obter o nome de usuário ou e-mail
$this->authSession->getUser()->getUsername();
$this->authSession->getUser()->getEmail();
Seu controlador já estende \Magento\Backend\App\Action
então já possui o objeto de autorização.Não são necessárias injeções adicionais.Para obter o usuário basta usar esta função:
/** @var \Magento\User\Model\User $user*/
$user = $this->_auth->getUser();
Outras respostas sugerem injeções duplicadas, que não são necessárias.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange