Перейти к содержанию

MiXeR54

Пользователи
  • Постов

    5
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные MiXeR54

  1. В 27.07.2019 в 11:47, WaNted сказал:
    
    if ( !\IPS\Db::i()->select( 'COUNT(*)', 'core_validating', array( 'member_id=? AND lost_pass!=1 AND forgot_security!=1', $member->member_id ) )->first() )
    {
    	// Подтвердил
    }

     

    не могли бы поделиться остальной частью кода? разобраться не могу, толи как то надо подключить \IPS\Db толи еще что.

  2. Суть:

    есть скрипт на авторизацию в удаленном приложении. 

    <?php
    header("Content-Type: text/plain; charset=UTF-8");
    
    // Verify login and password
    $login = $_GET['login'];
    $password = $_GET['password'];
    if(empty($login) || empty($password)) {
        exit('Empty login or password');
    }
    
    // Load IPB init script
    \define('REPORT_EXCEPTIONS', TRUE);
    $_SERVER['SCRIPT_FILENAME']	= __FILE__;
    require_once 'init.php';
    
    // Try authenticate
    $member = NULL;
    $ipsLogin = new \IPS\Login();
    foreach($ipsLogin->usernamePasswordMethods() as $method) {
        try {
            $member = $method->authenticateUsernamePassword($ipsLogin, $login, $password);
            \IPS\Login::checkIfAccountIsLocked($member, TRUE);
            if ($member->isBanned()) {
                $member = NULL;
                continue;
            }
            break;
        } catch (\Exception $e) {
            // Do nothing
        }
    }
    
    // We're done
    echo($member ? 'OK:' . $member->name : 'Incorrect login or password');
    ?>

    работает чудесно, но как добавить проверку - подтвердил ли пользователь свой email?

    Может кто откликнется за денежку. Открыт к предложениям.

  3. Доброго времени суток!


    Буду благодарен любой помощи по вопросу изменения шифрования, хотелось бы чтобы пароли были без соли и прочего
    в виде MD5(MD5(pass))

     

    Подскажите что поменять. Я так понимаю нужно менять именно здесь /system/member/member.php

        public function encryptedPassword( $password )
        {
            /* New password style introduced in 4.0 using Blowfish */
            if ( mb_strlen( $this->members_pass_salt ) === 22 )
            {
                return crypt( $password, '$2a$13$' . $this->members_pass_salt );
            }
            /* Old encryption style using md5 */
            else
            {
                return md5( md5( $this->members_pass_salt ) . md5( \IPS\Request::legacyEscape( $password ) ) );
            }
        }

     

×
×
  • Создать...