[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Авторизация. Разграничение прав доступа
rooor
Приветствую)

Возник вопрос... даже не вопрос, а так, мысли вслух.
Как лучше делать авторизацию с разграничением прав доступа?

# 1
Одна форма авторизации для всех, поле со статусом в таблице пользователей, проверка в начале скрипта, объявление константы, дальше по всему сайту проверяется эта константа и в соответствии со значением - права/действия
<?php

if(isset($_SESSION['id_user'], $_SESSION['admin']) && $_SESSION['admin'] !== true)
{
define('ROLE', 'user');
}
elseif(isset($_SESSION['id_user'], $_SESSION['admin']) && $_SESSION['admin'] === true)
{
define('ROLE', 'admin');
}
else
define('ROLE', 'guest');

# 2
Админка в отдельном каталоге, проверка авторизации из отдельной таблицы в БД, объявление константы "admin", если авторизация успешна

# 3
Отдельный скрипт авторизации для админов, какой-нибудь admin123.php в корне сайта
Проверка в БД в отдельной таблице, объявление константы "admin", если авторизация успешна
Lenarfate
ну, например, у меня разделено. то есть юзеры логинятся отдельно, их данные хранятся в бд. а доступы в админку в конфигах. но тут еще зависит от задачи, бывает, что нужно использовать только одну форму входа. тогда все данные (и юзеров и админа) можно хранить в бд.
Kuduro
Первый вариант реализован на большинстве ресурсов... зачем изобретать велосипед? huh.gif

Просто в отдельном поле статус - админ... их же может быть несколько, а еще модераторы... А на некоторых ресурсах вообще с десяток разных ролей...

Нужно больше информации... что из себя представляет пациент... Нужен ли админ доступ к сайту в целом, или есть отдельная админ-панель?

ИМХО первый вариант проще..

rooor
Цитата
Просто в отдельном поле статус - админ

имелось ввиду именно отдельное поле со статусом, статусов в этом поле может быть сколько угодно) и он присваивается константе
Цитата
Нужен ли админ доступ к сайту в целом, или есть отдельная админ-панель

больше информации не нужно) вопрос в общем) можно сделать отдельную админку, со всеми конфигами/добавлениями статей и проч., а можно админ-панель в уголок сайта подключать)
Цитата
ИМХО первый вариант проще

а по безопасности? хотя в таблицу пользователей можно добавить ещё 1 поле с админским паролем
например, 1 - авторизация, проверяем статус, если админ - показываем поле для ввода админкого пароля, пока пароль не введён - присваиваем роль "user"
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.