Двойная авторизация для автора блога на Эгее

Или закрываем авторские разделы от посторонних глаз

Система авторизации в Эгее, на мой взгляд, довольно сомнительная. Человеку предлагается ввести только пароль и, если ты ввел правильный пароль, то ты входишь в блог под именем автора.

Я решил, что хорошим решением будет немного усложнить авторизацию с помощью добавления базовой http-авторизации с именем пользователя и паролем.

Правка файла form-login.tmpl.php

/system/theme/templates/form-login.tmpl.php

Подключайся по FTP к корневой директории сайта и открывай файл form-login.tmpl.php, который лежит по адресу /system/theme/templates/ в текстовом редакторе.

Двойная авторизация для автора блога на Эгее
Вставляй кусок кода перед всем остальным кодом.

В самом начале файла, то есть на первой строке, тебе нужно вставить следующий код:

<?php if (isset($_SERVER["REQUEST_URI"]) && preg_match('/\/new\/(.*)|\/edit\/(.*)|\/drafts\/(.*)|\/sign-in\/(.*)|\/settings\/(.*)|\/favourite\/(.*)|\/unfavourite\/(.*)|\/pin\/(.*)|\/unpin\/(.*)|\/important\/(.*)|\/usual\/(.*)|\/reply\/(.*)|\/remove\/(.*)|\/quiet\/(.*)|\/discuss\/(.*)/', strtolower($_SERVER["REQUEST_URI"]))) {
	
	$valid_passwords = array ("USER_HERE" => "PASSWORD_HERE");
	$valid_users = array_keys($valid_passwords);
	
	$user = $_SERVER['PHP_AUTH_USER'];
	$pass = $_SERVER['PHP_AUTH_PW'];
	
	$validated = (in_array($user, $valid_users)) && ($pass == $valid_passwords[$user]);
	
	if (!$validated) {
	  header('WWW-Authenticate: Basic realm="Author Realm"');
	  header('HTTP/1.0 401 Unauthorized');
	  die ("<h1>401 Not authorized</h1>");
  
	}
	
?>

USER_HERE и PASSWORD_HERE замени на свой логин и пароль. Логин и пароль рекомендую ввести достаточно сложные.

Двойная авторизация для автора блога на Эгее
Вставляй эту строку после всего остального кода.

Теперь в самом конце файла, на последней строке добавь следующую строку:

<?php } ?>

Сохрани изменения в файле form-login.tmpl.php и проверь работоспособность новой авторизации у себя на блоге.

Двойная авторизация для автора блога на Эгее
При попытке получить доступ к ресурсам автора на блоге, тебя встретит такое окно.

Зайди на блог через режим Инкогнито в своем браузере или используй другой браузер, но тот, в котором ты не авторизован на блоге в качестве автора.

Введи логин и пароль, которые ты задал в коде выше.

Вывод

Двойная авторизация для автора блога на Эгее

В качестве вывода, можно сказать, что данная доработка позволяет ограничить доступ к любым указанным в скрипте URL-адресам для третьих лиц, включая поисковых роботов. Также она позволяет усложнить процесс целенаправленного попадания в авторский раздел блога.

Также эта доработка позволит убрать код с окном ввода пароля со всех страниц блога, кроме тех, где они необходимы. Это позволит убрать из контента каждой страницы дублирующий заголовок Ввод пароля и в целом облегчить код страницы, что немного ускорит её загрузку.

Надеюсь, что смог помочь тебе немного улучшить свой блог этой доработкой! Свои комментарии, вопросы, пожелания и/или замечания оставляй в комментариях! Я обязательно ознакомлюсь с ними и отвечу тебе! До связи!

Плюсануть
Поделиться
Отправить
Запинить
Понравился этот пост? Поделись им в соцсети!
Популярное
Ваш комментарий
адрес не будет опубликован
HTML-код не интерпретируется

Ctrl + Enter