54 private $eventManager;
64 private $remoteAddress;
82 \
Magento\Framework\Event\ManagerInterface $eventManager,
83 \
Magento\Framework\Stdlib\DateTime\DateTime $dateTime,
91 $this->eventManager = $eventManager;
93 $this->remoteAddress = $remoteAddress;
95 foreach ($this->securityCheckers as $checker) {
97 throw new \Magento\Framework\Exception\LocalizedException(
98 __(
'Incorrect Security Checker class. It has to implement SecurityCheckerInterface')
116 if (
null === $longIp) {
117 $longIp = $this->remoteAddress->getRemoteAddress();
119 foreach ($this->securityCheckers as $checker) {
120 $checker->check($requestType, $accountReference, $longIp);
123 $this->createNewPasswordResetRequestEventRecord($requestType, $accountReference, $longIp);
136 $this->passwordResetRequestEventCollectionFactory->create()->deleteRecordsOlderThen(
152 protected function createNewPasswordResetRequestEventRecord($requestType, $accountReference, $longIp)
157 ->setAccountReference($accountReference)
performSecurityCheck($requestType, $accountReference=null, $longIp=null)
__construct(ConfigInterface $securityConfig, \Magento\Security\Model\PasswordResetRequestEventFactory $passwordResetRequestEventFactory, ResourceModel\PasswordResetRequestEvent\CollectionFactory $passwordResetRequestEventCollectionFactory, \Magento\Framework\Event\ManagerInterface $eventManager, \Magento\Framework\Stdlib\DateTime\DateTime $dateTime, RemoteAddress $remoteAddress, $securityCheckers=[])
$passwordResetRequestEvent
const SECURITY_CONTROL_RECORDS_LIFE_TIME
$passwordResetRequestEventCollectionFactory
$passwordResetRequestEventFactory