Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //скрипт для авторизации в лаунчере GravitLauncher
- //by @LastRey
- //https://discord.gg/M2UDuxw
- //Впилены микрозащиты проверки ip
- //с которого идет подключение
- //и секретный ключ.
- /* запрос выполняется командой:
- /* yoursite.tld/auth.php?login=%login%&password=%password%&access_key=ваш_код
- ?php
- @error_reporting(E_ALL ^ E_WARNING ^ E_DEPRECATED ^ E_NOTICE);
- @ini_set('error_reporting', E_ALL ^ E_WARNING ^ E_DEPRECATED ^ E_NOTICE);
- @ini_set('display_errors', true);
- $config = [
- 'db' => [
- 'host' => 'localhost', /* Хост БД */
- 'user' => 'f_u1', /* Юзер БД */
- 'name' => 'forum', /* Назваение БД */
- 'pass' => 'ваш_пароль' /* Пароль от БД */
- ],
- 'users' => [
- //!!!!!НЕ МЕНЯЙ!!!!!
- 'table' => 'core_members', /* Таблица с юзерами */
- 'name' => 'name', /* Колонка с никами юзеров */
- 'mail' => 'email', /* Колонка с почтой юзеров */
- 'pass' => 'members_pass_hash', /* Колонка с паролями пользователей */
- //!!!!!НЕ МЕНЯЙ!!!!!
- ],
- 'access_key' => 'ваш_ключ', /* Секретный ключ для авторизации */
- 'auth_ip' => 'localhost' /* IP-адресс сервера, который будет обращаться к скрипту */
- ];
- if ($_SERVER['REMOTE_ADDR'] != $config['auth_ip']) {
- die('К сожалению у вас нету доступа к данному содержимому!');
- }
- if (isset($_GET['login']) && isset($_GET['password']) && $_GET['access_key'] == $config['access_key']) {
- function checkPass($getPass, $getHashPass) {
- if (password_verify($getPass, $getHashPass)) {
- return true;
- } else {
- return false;
- }
- }
- $db = new mysqli($config['db']['host'], $config['db']['user'], $config['db']['pass'], $config['db']['name']);
- if ($db->connect_errno) {
- die($db->connect_error);
- } else {
- $data = [
- 'user' => $db->real_escape_string($_GET['login']),
- 'pass' => $db->real_escape_string($_GET['password']),
- ];
- $getUser = $db->query("SELECT * FROM `{$config['users']['table']}` WHERE `{$config['users']['name']}`='{$data['user']}' OR `{$config['users']['name']}`='{$data['user']}' LIMIT 1");
- if ($getUser->num_rows) {
- $getUser = $getUser->fetch_assoc();
- if (checkPass($data['pass'], $getUser[$config['users']['pass']])) {
- die("OK:{$getUser['name']}");
- } else {
- die('Incorrect login or password');
- }
- } else {
- die('Incorrect login or password');
- }
- }
-
- $db->close();
- } else {
- die ('Empty login or password');
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement