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.