dronnn
Проверенные
- Сообщения
- 32
- Реакции
- 6
- Баллы
- 3,305
Уважаемые форумчане, помогите плиз осуществить авторизацию в дополнительном веб приложении используя базу данных XenForo через JSON аутентификацию. Приложение использует комбинацию HTTP (S), JSON, Rijndael 256 и кодирование base64 для передачи и получения запросов.
Вот что должно получиться:
1) Пользователь заходит на веб приложение.
2) Пользователь вводит логин и пароль от XenForo.
3) Приложение передает фоновый HTTP запрос по назначенному URL к XenForo (который содержит код аутентификации).
4) XenForo отвечает сообщением об успехе или неудаче.
5) Если это успех веб приложение автоматически создаст новую учетную запись пользователя и откроет доступ пользователя.
6) Если это неудача, то приложение выведет соответствующее сообщение.
Веб приложение посылает следующий HTTP POST массив:
Массив данных кодируется с помощью base64, а затем шифруется с использованием Rijndael 256.
Значение ID сайта размещено без кодирования или шифрования, что позволяет иметь различные Аутентификации одного URL.
Как массив данных зашифрован вы должны иметь ключ шифрования как на обоих сторонах.
Веб приложение рассчитывает получить следующий ответ:
или
Опять этот массив кодируется с помощью base64, а затем шифруется с использованием Rijndael 256.
Я не очень разбираюсь в PHP, плюс перевел с англ.
Спасибо.
P.S. Вложил куски необходимого кода.
Вот что должно получиться:
1) Пользователь заходит на веб приложение.
2) Пользователь вводит логин и пароль от XenForo.
3) Приложение передает фоновый HTTP запрос по назначенному URL к XenForo (который содержит код аутентификации).
4) XenForo отвечает сообщением об успехе или неудаче.
5) Если это успех веб приложение автоматически создаст новую учетную запись пользователя и откроет доступ пользователя.
6) Если это неудача, то приложение выведет соответствующее сообщение.
Веб приложение посылает следующий HTTP POST массив:
PHP:
Array (
[data] =>
{
"username":"johnsmith",
"password":"1234",
"task":"authenticate",
"api_version":1,
"program_version":"4.1",
"program_name":"dalegroup.tickets"
}
[site_id] => 1
)
Значение ID сайта размещено без кодирования или шифрования, что позволяет иметь различные Аутентификации одного URL.
Как массив данных зашифрован вы должны иметь ключ шифрования как на обоих сторонах.
Веб приложение рассчитывает получить следующий ответ:
PHP:
Array (
[success] => 1
[name] => "John Smith"
[email] => "[email protected]"
)
Код:
Array (
[success] => 0
)
Я не очень разбираюсь в PHP, плюс перевел с англ.
Спасибо.
P.S. Вложил куски необходимого кода.