![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-user/Model/Backend/Config/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\User\Model\Backend\Config; /** * User backend observer helper class * * Class \Magento\User\Model\Backend\Config\ObserverConfig */ class ObserverConfig { /** * Config path for lockout threshold */ private const XML_ADMIN_SECURITY_LOCKOUT_THRESHOLD = 'admin/security/lockout_threshold'; /** * Config path for password change is forced or not */ private const XML_ADMIN_SECURITY_PASSWORD_IS_FORCED = 'admin/security/password_is_forced'; /** * Config path for password lifetime */ private const XML_ADMIN_SECURITY_PASSWORD_LIFETIME = 'admin/security/password_lifetime'; /** * Config path for maximum lockout failures */ private const XML_ADMIN_SECURITY_LOCKOUT_FAILURES = 'admin/security/lockout_failures'; /** * Backend configuration interface * * @var \Magento\Backend\App\ConfigInterface */ protected $backendConfig; /** * Constructor * * @param \Magento\Backend\App\ConfigInterface $backendConfig */ public function __construct( \Magento\Backend\App\ConfigInterface $backendConfig ) { $this->backendConfig = $backendConfig; } /** * Check if latest password is expired * * @param array $latestPassword * @return bool */ public function _isLatestPasswordExpired($latestPassword) { if (!isset($latestPassword['last_updated']) || $this->getAdminPasswordLifetime() == 0) { return false; } return (int)$latestPassword['last_updated'] + $this->getAdminPasswordLifetime() < time(); } /** * Get admin lock threshold from configuration * * @return int */ public function getAdminLockThreshold() { return 60 * (int)$this->backendConfig->getValue(self::XML_ADMIN_SECURITY_LOCKOUT_THRESHOLD); } /** * Check whether password change is forced * * @return bool */ public function isPasswordChangeForced() { return (bool)(int)$this->backendConfig->getValue(self::XML_ADMIN_SECURITY_PASSWORD_IS_FORCED); } /** * Get admin password lifetime * * @return int */ public function getAdminPasswordLifetime() { return 86400 * (int)$this->backendConfig->getValue(self::XML_ADMIN_SECURITY_PASSWORD_LIFETIME); } /** * Get admin maximum security failures from config * * @return int */ public function getMaxFailures() { return (int)$this->backendConfig->getValue(self::XML_ADMIN_SECURITY_LOCKOUT_FAILURES); } }