2012-02-29 3 views
0

У меня есть база данных Apache Derby, которая до сих пор всегда была локально доступной. К настоящему времени он должен получить доступ к нескольким компьютерам, поэтому я считаю, что он должен иметь имя пользователя/пароль.Преобразование однопользовательской базы данных Apache Derby в одну с пользователями

  1. Как взять существующую базу данных и задним числом добавить пользователя
  2. Как я могу обеспечить аутентификацию местной/сети для этого пользователя?

Я помню, как просматривали свои документы несколько лет назад, и, похоже, в этих случаях разработчику было много, чтобы реализовать их.

Для уточнения более, относительно точки № 1, this page говорит:

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

Я думаю, это означает, что мне, вероятно, придется создать новую базу данных с именованным пользователем и перенести всю дату из исходной однопользовательской базы данных в новую. Это верно? Есть ли более простой способ?

Также в отношении второго вопроса, the manual says

Важно: Derby встроенного механизма аутентификации подходит только для целей разработки и тестирования. Настоятельно рекомендуется, чтобы производственные системы полагались на внешнюю службу каталогов, такую ​​как LDAP или пользовательский класс для аутентификации.

Который, для меня, говорит, что встроенная аутентификация не стоит использовать. Мы не собираемся идти на интеграцию LDAP, так что есть что-то между этими двумя, которые стоит использовать?

+0

Может быть, вы должны смотреть через их текущие документы в первую очередь? – DNA

+0

Я снял их, и они действительно не выглядят иначе. – Bill

+0

Есть ли [эта страница] (http://db.apache.org/derby/docs/10.2/devguide/cdevcsecure42374.html) любое использование? Говорит, что вам необходимо установить для свойства 'derby.connection.requireAuthentication' значение true и определить пользователей, как описано [здесь] (http://db.apache.org/derby/docs/10.2/devguide/cdevcsecure37817.html), например. set 'derby.authentication.provider = BUILTIN' – DNA

ответ

3

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

Вы, вероятно, хотите, чтобы начать здесь: http://db.apache.org/derby/docs/10.8/adminguide/cadminapps49914.html и здесь: http://db.apache.org/derby/docs/10.8/devguide/cdevcsecure42374.html

Смежные вопросы