|
|
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
Такой вопрос. Представим есть абстрактная многопользовательская БД, данные о пользователях системы которая базируется на данной БД хранятся не как пользователи БД, а в таблице структуры типа "user", "password". Есть интерфейс который коннектится к БД через пользователя БД используя логин и пароль. Вопрос в том, где лучше хранить эти логин и пароль, что бы их не заполучили, снаружи? Можно жестко прописать их в коде интерфейса, но тогда, для переноса БД на другой сервер придется переписывать сам интерфейс, плюс декомпиляция может дать пароль сторонним людям. Можно хранить в XML файле, но его легко прочитать опять таки сторонним людям. Можно во внешней маленькой БД с запороленным входом. Какие еще варианты есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2011, 13:53 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
Вообще не хранить, а спрашивать у пользователя при каждом запуске приложения. Или использовать trusted authentication и доверять винде - она же уже проверила пользователя и позволила в себя войти. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2011, 14:11 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Тогда пользователи должны быть созданы на сервере, а я как раз о ситуации, когда пользователи на сервере не созданы, а существуют только на уровне системы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2011, 14:21 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
ALOTEТогда пользователи должны быть созданы на сервере, а я как раз о ситуации, когда пользователи на сервере не созданы, а существуют только на уровне системы. В морг такую ситуацию. В двузвенке она бесперспективна. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2011, 14:41 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
ALOTE... а в таблице структуры типа "user", "password" ... пароли надеюсь не в открытом виде хранятся ? ) Вариант работы: пользователь конектится к БД под общедоступным логином и "регистрируется" через вызов ХП - в случаи неудачи - разрыв соединения со стороны сервера. При успешной регистрации - выдается сессионый ключ - его нужно предоставлять для доступа к данным. Если нужно, выполнять шифрование канала средствами БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2011, 16:02 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
JoFanALOTE... а в таблице структуры типа "user", "password" ... пароли надеюсь не в открытом виде хранятся ? ) Вариант работы: пользователь конектится к БД под общедоступным логином и "регистрируется" через вызов ХП - в случаи неудачи - разрыв соединения со стороны сервера. При успешной регистрации - выдается сессионый ключ - его нужно предоставлять для доступа к данным. Если нужно, выполнять шифрование канала средствами БД. О! Отличное решение! Спасибо за идею. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2011, 16:55 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
JoFanALOTE... а в таблице структуры типа "user", "password" ... Пароли надеюсь не в открытом виде хранятся ? ) Вариант работы: пользователь конектится к БД под общедоступным логином и "регистрируется" через вызов ХП - в случаи неудачи - разрыв соединения со стороны сервера. При успешной регистрации - выдается сессионый ключ - его нужно предоставлять для доступа к данным. Если нужно, выполнять шифрование канала средствами БД. При наличии поддержки ролей в СУБД: 1. общедоступный логин по правам может только законнектиться к БД и только вызвать ХП регистрации 2. ХП регистрации получает "сертификат" пользователя - можно по серьёзному, типа X-509 :), а можно тупо имя и пароль, шифрованные с учётом временно-зависимых данных, известных и серверу (ид сессии, время установки соединения и т.д.); 3. при успешной проверке пароля в ХП - сессии выдаётся роль, приписанная пользователю - у которй уже есть доступ к данымм и т.п. Комментарии? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2011, 21:16 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
АнатоЛойКомментарии? Что помешает гаду типа меня назначить себе роль, не вызывая эту мега-процедуру? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2011, 21:31 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovАнатоЛойКомментарии? Что помешает гаду типа меня назначить себе роль, не вызывая эту мега-процедуру? Отсутствие прав на назначение себе роли у общедоступного логина. Отсутствие прав на назначение себе роли у пользователя. Такие права есть только у ХП регистрации. Чтобі она отработатла "корректно" - вы должны передать ей "корректные" временно-зависимые параметры ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2011, 21:42 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
АнатоЛойDimitry Sibiryakovпропущено... Что помешает гаду типа меня назначить себе роль, не вызывая эту мега-процедуру? Отсутствие прав на назначение себе роли у общедоступного логина. Отсутствие прав на назначение себе роли у пользователя роли, которую получает пользователь. Такие права есть только у ХП регистрации. Чтобы она отработатла "корректно" - вы должны передать ей "корректные" временно-зависимые параметры ;) Но, вопрос натолкнул на мысль: видать не во всякой СУБД есть ХП, которые могут получить доступ к данным, на доступ к которым напрямую нет прав у самого пользователя... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2011, 21:44 |
|
||
|
Где хранить данные коннекта
|
|||
|---|---|---|---|
|
#18+
Не всякая СУБД позволяет запретить назначение себе роли. В SQL стандарте роль это атрибут коннекта, такой же как имя пользователя. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2011, 21:53 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=37538673&tid=1541934]: |
0ms |
get settings: |
8ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
166ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 470ms |

| 0 / 0 |
