1

Тема: Разделение прав конечных пользователей при регистрации на ресурсе.

Хочу сделать выбор из трёх возможных аккаутов при регистрации на моём сайте, в соответствии с которым пользователи будут заполнять разные формы.

В конечном итоге пользователи(пусть их будет три, по одному на каждый тип аккаунта) получают разные права:
Пусть ПЕРВЫЙ МОЖЕТ смотреть определённые таблицы и бд а ВТОРОЙ НЕТ.
ТРЕТИЙ же может смотреть все пользовательские бд и таблицы и делать UPDATE как пример.

Много что прочитал, но ответа применимого именно к КОНЕЧНЫМ пользователям ресурса не нашел. Хотя вроде вопрос совсем банальный.

2

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Unmanner
Если вы о доступе к phpMyAdmin, то достаточно настроить привилегии для трех пользователей выставив им соответствующие права.

Если речь идет о сайте, то все зависит от того как вы напишете логику скрипта работающего над разграничением пользователей.

3

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Ясно..
А можно пример такой логики? И какие основные моменты там должны быть выделены?

4

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Включить в скрипт выполнение трёх различных GRANТ?

То есть сделать цикл типа case?

5

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Или я говорю чушь?

6

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Unmanner
У вас есть подготовленные три пользователя MySQL с разным набором прав и при авторизации следует подключаться к MySQL соответствующим пользователем.

То есть, можно и case, но писать его в PHP коде при вызове функции подключения mysql_connect(); именно в этой функции вы определяете пользователя для подключения к MySQL.

7

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Так, отлично, кажется разобрался!

То есть к примеру есть у меня конфиг
[spoiler]
<?php
$db_location = "localhost";               
$db_user = "root";                   
$db_password = "12345";               
$db_name = "userrrr";                       
@mysql_connect($db_location,$db_user,$db_password);
@mysql_query("SET NAMES cp1251");
ct_db($db_name);
?>[/spoiler]

И мне прямо там можно написать условия?

8

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Unmanner
Да, прямо там можете написать.

9

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

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

10

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Unmanner
Не думаю, что это может быть проблемой. Обычной практикой является установка пользователю прав на выражения SELECT, INSERT, UPDATE и DELETE; остальные права надо назначать с особым вниманием, так как именно запросы на изменение структуры таблиц являются потенциально.

11

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Я как понял что ещё php скрипты, так как выполняются на сервере, способствуют повышению безопасности.

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

12

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Unmanner
Скрипты должны выполнять только то, что от них требуется - это и будет безопасностью. Вы все совершенно верно поняли. Скрипты не должны позволить выполнять SELECT любой таблицы и любых данных.

13

Re: Разделение прав конечных пользователей при регистрации на ресурсе.

Ладно, спасибо за помощь smile