1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Туториал Интеграция FMXLauncher с разными CMS

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем Starr, 15 авг 2015.

  1. Автор темы
    Starr

    Starr Активный участник Пользователь

    Баллы:
    98
    Использование классов можно увидеть в вебчасти @Vladlen_198. Для FMXL3 будет общий класс, содержащий несколько функций авторизации под каждую СMS.
     
    Последнее редактирование: 10 ноя 2015
  2. VaNnOrus

    VaNnOrus Старожил Пользователь

    Баллы:
    123
    Не важно один класс или несколько, я говорю о том, что функции авторизации в этих скриптах не должны копировать код методов авторизации у разных ЦМС, а должны запускать в себе инстансы ЦМС и работать их методами. Конкретно для xf это наиболее целесообразно.
     
  3. Vladlen_198

    Vladlen_198 Старожил Пользователь

    Баллы:
    108
    Skype:
    ultrashock98
    Имя в Minecraft:
    UltraShock
    Ну если занятся нечем и будешь выкуривать доки можно реализовать опять же. В моей реализации используются методы можно спокойно заменить.
     
  4. Extasy

    Extasy Активный участник Пользователь

    Баллы:
    78
    Имя в Minecraft:
    Extasy
    Как связать с webMCRex?
     
  5. Автор темы
    Starr

    Starr Активный участник Пользователь

    Баллы:
    98
    Там разве не тот же хеш, какой и у WebMCR?
     
  6. Extasy

    Extasy Активный участник Пользователь

    Баллы:
    78
    Имя в Minecraft:
    Extasy
    На счет этого незнаю.
     
  7. Автор темы
    Starr

    Starr Активный участник Пользователь

    Баллы:
    98
    Тогда выбирай WebMCR.
     
  8. Rlemish

    Rlemish Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    rlemish
    XenForo актуально до 1.4, в 1.5 хэш пароли в отдельной таблице...
     
  9. Автор темы
    Starr

    Starr Активный участник Пользователь

    Баллы:
    98
    Кидай структуру таблиц XenForo, сделаю.
     
  10. Rlemish

    Rlemish Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    rlemish
    [​IMG]

    [​IMG]
     
  11. Nicolayka

    Nicolayka Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    Nicolayka
    Ну как успехи?
     
  12. Rlemish

    Rlemish Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    rlemish
    Вот что удалось узнать, версия выше 1.2 использует новую схему (core12), а именно PHPass, есть возможность включить старый метод (core), но hash и salt записываются все равно в другой таблице да еще группой, вот примерная схема как это работает.
    Если кто-то поможет допилить, заранее спасибо!
    P.S. Есть методы хеширования паролей других движков, но они работают только на чтение, регистрация не доступна...
    Исходники PHPass есть тут (/library/XenForo/PasswordHash.php) или ТУТ и ТУТ человек подробно описал как работает этот метод в этом движке.

    [​IMG]
    Все очень просто оказалось, странно что нет описания по этой теме, вот простой рабочий пример сравнения пароля и хеша для Core12 (PHPass).

    [​IMG]
     
    Последнее редактирование: 28 дек 2015
  13. Автор темы
    Starr

    Starr Активный участник Пользователь

    Баллы:
    98
    Ой, код очень напоминает WordPress. в общем, скоро запилю.
     
  14. Rlemish

    Rlemish Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    rlemish
    Мой вариант реализации XenForo на CORE12 под FMXL3
    P.S. имя таблицы с хеш-паролями можно вынести в settings.php для красоты.

    PHP:
    <?php
            
    # XenforoCore12:
                
    if (!isset($this->_dbConnector)) {return $this::STATUS_DB_OBJECT_NOT_PRESENT;}
             
                
    $request "SELECT `user_id` FROM `{$playersTableName}` WHERE `username`=:login";
                
    $arguments = array ('login' => $login); 

                
    $preparedRequest null;
                
    $status $this->_dbConnector->ExecutePreparedRequest($request$arguments$preparedRequest);
                if (!isset(
    $preparedRequest) || !$status) {
                    return 
    $this::STATUS_DB_ERROR;
                }     
             
                
    $user_id $preparedRequest->fetchColumn();         
             
                
    $request1 "SELECT `data` FROM `xf_user_authenticate` WHERE `user_id`=:user_id";
                
    $arguments1 = array ('user_id' => $user_id); 

             
                
    $preparedRequest1 null;
                
    $status1 $this->_dbConnector->ExecutePreparedRequest($request1$arguments1$preparedRequest1);
                if (!isset(
    $preparedRequest1) || !$status1) {
                    return 
    $this::STATUS_DB_ERROR;
                }
     
                
    $xfHasher = new PasswordHash(8TRUE);
                
    $datahash $preparedRequest1->fetchColumn();
             
                
    preg_match("/(s:60:\")+(.*)+?(\")/"$datahash$matches);
                
    $hashedPassword $matches[2];
             
             
                
    $authStatus $xfHasher->CheckPassword($password$hashedPassword) ? $this::STATUS_USER_EXISTS $this::STATUS_USER_NOT_EXISTS;
                
    $this->_dbConnector->ClosePreparedRequest($preparedRequest);
    ?>
     
    Последнее редактирование: 1 янв 2016
  15. RedFoo_17

    RedFoo_17 Активный участник Пользователь

    Баллы:
    76
    А на 2 случайно нету? :rolleyes:
    А чего удалили тему FMXLauncher? :confused:
     
  16. Автор темы
    Starr

    Starr Активный участник Пользователь

    Баллы:
    98
     
  17. MILLAN

    MILLAN Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    MILLAN
    Дайте исходы у кого накомпе остался лаунчер пж
     
  18. Sirse

    Sirse Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Sirse
    У меня есть набор скриптов авторизации на XenForo REST API, там нужно немного дописать функционал, но в целом работает. Вечером скину.
     
  19. MILLAN

    MILLAN Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    MILLAN
    спс
     
  20. Автор темы
    Starr

    Starr Активный участник Пользователь

    Баллы:
    98
    Ты про что? Исходники или защиту?
     

Поделиться этой страницей