Como alterar o tempo da sessão de administração no Magento?


28

É possível que às vezes o tempo em que a sessão de administrador esteja ativa seja muito curto.

Como alterar o tempo necessário para efetuar logoff automático do usuário no back-end?

Respostas:


28

Há um item de menu para isso em:

Sistema> Configuração> Avançado> Admin> Segurança> Tempo de Vida da Sessão (Segundos)

Verifique também as variáveis ​​de ambiente php

  • php_value session.cookie_lifetime <seconds>
  • php_value session.gc_maxlifetime <seconds>

Para garantir que você esteja editando o php.ini correto, crie um arquivo "check.php" simples com o seguinte conteúdo:

<?php 
phpinfo();
?>

, coloque o arquivo no diretório inicial do magento, chame-o no navegador (URL / check.php) e verifique essas configurações.

Para mais informações veja aqui .


16

Solução para Magento 2.0

Para o Magento 2, ele pode ser encontrado no painel esquerdo, no Admin.

Lojas> Configuração> Avançado> Admin> Segurança

Admin Session Lifetime (segundos) na janela principal.

O valor padrão é 900 para o Magento 2. Por 1 hora, defina 3600(60 segundos * 60 minutos).

Você deve configurá-lo em "Configuração padrão" em vez de selecionar um site ou uma visualização da loja para a sua opção de visualização da loja. Tentei usá-lo em uma visualização de loja através do menu suspenso no canto superior esquerdo e a opção não está lá. Faz sentido, pois é uma configuração de administração.

Observe que essa configuração não afeta a vida útil dos cookies pelo menos desde o Magento 2.1


Parece estar trabalhando para mim no 2.1 agora, pelo menos no modo de desenvolvedor, se isso importa.
— Aaron McMillin

Quebrado em 2.1.1, sempre cookie de sessão
— Alex

Funciona para o meu Magento v.2.3.1
— kanenas

4

Outra solução simples, sem modificar nenhuma configuração, é instalar qualquer auto refresh addonpara o seu navegador e definir seu tempo (60 segundos).

Ele atualizará automaticamente a página a cada 6o segundos, o que impede que a vida útil da sessão expire e podemos começar a trabalhar em outra guia.

I used Easy Auto Refresh and it works fine for me.


2

Sistema -> Configuração -> Geral -> Web -> Gerenciamento de Cookies de Sessão

Vida útil do cookie: altere esse valor (por exemplo: 86400).


8
Desculpe, mas este é o valor para a vida útil da sessão no front-end (loja). O tempo de vida da sessão do administrador pode ser definido em Sistema> Configuração> Seção Avançada> Admin> Tempo de Vida da Sessão (segundos). Defina para 3600 (60 segundos * 60 minutos) por uma vida útil de uma hora.
— Anna Völkl

@ AnnaVölkl Eu escrevi um post detalhado sobre isso. magento2training.com/…
— Nahid

2

Verifique a captura de tela da imagem anexada abaixo no painel de administração do Magento 2 para configurar a sessão do usuário de login. insira a descrição da imagem aqui


2

Solução para Magento 2.1+

Desde o Magento 2.1, a vida útil da sessão de administrador é sempre "sessão", ou seja, até o navegador ser fechado. Isso foi introduzido por razões de segurança.

O código relevante está em Magento\Backend\Model\Session\AdminConfig:

/**
 * Set session cookie lifetime to session duration
 *
 * @return $this
 */
protected function configureCookieLifetime()
{
    return $this->setCookieLifetime(0);
}

Se você deseja alterar esse comportamento, pode adicionar um plug-in para esta classe com o seguinte método interceptador:

public function beforeSetCookieLifetime()
{
    $lifetime = $this->scopeConfig->getValue(
        \Magento\Framework\Session\Config::XML_PATH_COOKIE_LIFETIME,
        \Magento\Framework\App\Config\ScopeConfigInterface::SCOPE_TYPE_DEFAULT);
    return [$lifetime, \Magento\Framework\Session\Config::COOKIE_LIFETIME_DEFAULT];
}

Onde $this->scopeConfigdeve ser uma instância de \Magento\Framework\App\Config\ScopeConfigInterface, injetado via parâmetro construtor.

Dessa forma, a vida útil do cookie é usada na configuração, assim como no frontend.

Observe que a configuração em Lojas> Configuração> Avançado> Segurança do administrador> Tempo de vida da sessão não tem mais efeito sobre os cookies! Ele é usado para determinar a vida útil da sessão Redis; portanto, se você aumentar a vida útil do cookie, também deverá aumentar esse valor.



1

No MySQL:

tabela: core_config_data

caminho: admin / security / session_lifetime


0

sim, mas primeiro você precisa garantir que a localização do magento e a hora do servidor estejam no mesmo fuso horário. também verifique se não há nenhuma sessão. * substitui no php.ini

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.