Пишу проект с админ панелью на Laravel 5.2.
/*
— сам сайт
/admin/*
— панель администратора
На сайте не предусмотрена авторизация пользователей.
Как защитить админ панель? Само собой, ssl покупать придется. Есть вариант с .htaccess, чтобы прописать IP, которым будет дан доступ к /admin
.
Как лучше сделать? Расскажите о плюсах и минусах предложенных решений...
Если не предусмотренна авторизация можете создать Middleware
с прверкой по IP
в app/http/Middlware создаёте файлы IpMiddleware (или любоей другое название)
namespace App\Http\Middleware;
use Closure;
class IpMiddleware{
public function handle($request, Closure $next)
{
if($request->ip() != 'Доверенный ИП'){
//ИП не соответсвует
return abort(401);
}
//всё впорядке ИП ваш
return $next($request);
}
}
Потом в app/http/Kernel.php
дописываете d $routeMiddleware массив
'ipcheck' => \App\Http\Middleware\IpMiddleware::class,
Теперь можете его использовать на Руты или в КОнтроллере
Route::get('admin', ['middleware' => 'ipcheck', function()
{
//
}]);
Или в контроллере
public function __construct()
{
$this->middleware('ipcheck')
}
Это с помощью Laravel ещё можно использоватьbasicAuth
Или средставим Апачи
Какой лучше. Я думаю всё таки лучше закрыть доступ через Апач чтоб можно было вводить Пароль и Логин ну а также дополнительно привязать Laravel к Ip!
Авторизацией называют как раз контроль доступа. А ввод имени и пароля это аутентификация.
Проверяйте права текущего пользователя. В Laravel принято выносить фильтры доступа на уровень middleware. Можно привязать такого посредника конкретно к административным маршрутам.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Имеется HTML-разметка в текстовой переменнойКак можно заменить все теги в этой разметке на тег p? Есть ли стандартные функции PHP для этого? strip_tags()...
Код ресайзит(resize) картинки и сохранят в папкуНужно вызвать функцию ресайза, но как-то красиво, чтоб не дублировать код
В проекте на Yii2, я загружаю через форму файлы в папку files, находящуюся в корне проекта, а не в папке web