Гость
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / Помогите настроить авторизацию на базу в MongoDB / 17 сообщений из 17, страница 1 из 1
21.09.2015, 18:07
    #39057692
AntiVata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
Итак, имеем сервер mongo

Создал тестовую базу TestDB
Далее создал в ней тестового пользователя TestAdmin

Установил серверу при запуске параметр --auth

Подключаюсь к серверу, указывая логин и пароль при создании TestAdmin

И получаю отлуп

2015-09-21 18:01:47: Connecting to localhost:27017...
2015-09-21 18:01:47: connect failed
2015-09-21 18:01:47: Unable to authorize

Я ожидал, что получу доступ к серверу и мне будет доступна только TestDB


Что я делаю не так?
Может какие-то ещё ключи указывать?


Версия mongo 3.0
...
Рейтинг: 0 / 0
21.09.2015, 19:46
    #39057756
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
...
Рейтинг: 0 / 0
22.09.2015, 13:11
    #39058268
AntiVata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
skyANAПо шагам: Enable Authentication after Creating the User Administrator
Кидаться левыми мануалами я и сам могу

На первом же шаге ошибка

use admin
db.createUser(
{
user: "siteUserAdmin",
pwd: "password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)


Ошибка - TypeError: db.createUser is not a function (shell):5

База версии 3.0.6
...
Рейтинг: 0 / 0
22.09.2015, 14:52
    #39058413
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
AntiVataskyANAПо шагам: Enable Authentication after Creating the User Administrator
Кидаться левыми мануалами я и сам могу

На первом же шаге ошибка

use admin
db.createUser(
{
user: "siteUserAdmin",
pwd: "password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)


Ошибка - TypeError: db.createUser is not a function (shell):5

База версии 3.0.6Если Вы называете официальную документацию "левым мануалом", то разговор думаю можно закончить :)

db.createUser()

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
MongoDB shell version: 3.0.6
connecting to: admin
> db.createUser
function (userObj, writeConcern) {
    var name = userObj["user"];
    var cmdObj = {createUser:name};
    cmdObj = Object.extend(cmdObj, userObj);
    delete cmdObj["user"];

    this._modifyCommandToDigestPasswordIfNecessary(cmdObj, name);

    cmdObj["writeConcern"] = writeConcern ? writeConcern : _defaultWriteConcern;

    var res = this.runCommand(cmdObj);

    if (res.ok) {
        print("Successfully added user: " + getUserObjString(userObj));
        return;
    }

    if (res.errmsg == "no such cmd: createUser") {
        throw Error("'createUser' command not found.  This is most likely because you are " +
                    "talking to an old (pre v2.6) MongoDB server");
    }

    if (res.errmsg == "timeout") {
        throw Error("timed out while waiting for user authentication to replicate - " +
                    "database will not be fully secured until replication finishes");
    }

    throw Error("couldn't add user: " + res.errmsg);
}
>
...
Рейтинг: 0 / 0
07.10.2015, 06:54
    #39070050
DrGonzo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
AntiVataОшибка - TypeError: db.createUser is not a function (shell):5

База версии 3.0.6

База может и 3.0.6, а вот шелл ваш похоже не новее, чем 2.4, т.к. функция db.createUser() была добавлена только в 2.6.
...
Рейтинг: 0 / 0
07.10.2015, 09:33
    #39070142
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
DrGonzoAntiVataОшибка - TypeError: db.createUser is not a function (shell):5

База версии 3.0.6

База может и 3.0.6, а вот шелл ваш похоже не новее, чем 2.4, т.к. функция db.createUser() была добавлена только в 2.6.+100500
...
Рейтинг: 0 / 0
14.10.2015, 17:42
    #39076776
AntiVata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
DrGonzoAntiVataОшибка - TypeError: db.createUser is not a function (shell):5

База версии 3.0.6

База может и 3.0.6, а вот шелл ваш похоже не новее, чем 2.4, т.к. функция db.createUser() была добавлена только в 2.6.

Согласен, мой косяк.
Я использовал графическую тулзу. Видимо там старая версия консоли.

Вот последовательность моих действий согласно официальному мануалу

1) Просто запустил mongo без авторизации
Код: powershell
1.
D:\mongodb\bin\mongod.exe --logpath d:\mongodb\log.txt --service



2) Затем подключился и создал администратора



3)Рестартанул сервис с авторизацией
Код: powershell
1.
D:\mongodb\bin\mongod.exe --logpath d:\mongodb\log.txt --service --auth




После всех указанных действий пытаюсь подключиться к mongo с логином и паролем

и получаю



Что я делаю не так?
...
Рейтинг: 0 / 0
14.10.2015, 17:52
    #39076789
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
AntiVata, Вы к базе test пытаетесь подключиться, а надо так:

Код: powershell
1.
mongo localhost:27017/admin --authenticationDatabase admin -u siteUserAdmin -p password
...
Рейтинг: 0 / 0
14.10.2015, 18:41
    #39076824
AntiVata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
skyANAAntiVata, Вы к базе test пытаетесь подключиться, а надо так:

Код: powershell
1.
mongo localhost:27017/admin --authenticationDatabase admin -u siteUserAdmin -p password


Спасибо, подсоединиться получилось

Но тогда вопрос - как мне работать с существующей базой TestDB?
Почему не получается работать с этой базой?

Я ведь давал доступ siteUserAdmin?

Или нужно создать отдельного пользователя для этой базы и уже из под него пытаться работать с данными из этой TestDB?
...
Рейтинг: 0 / 0
14.10.2015, 19:29
    #39076872
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
AntiVata, почитайте документацию о ролях: http://docs.mongodb.org/manual/reference/built-in-roles/

Роль, которой вы наделили своего админа ( userAdminAnyDatabase ) позволяет назначать права другим пользователям, но не работать с бд.

Создайте в целевой базе пользователя с ролью dbOwner , и работайте в той базе из-под него.

Если не хотите заморачиваться и разбираться с ролями, то назначьте текущему админу роль root , тогда сможете делать что угодно и в какой угодно базе.
Но это не безопасно, если у Вас приложение будет ходить в монгу из под такого админа!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
24.01.2018, 17:29
    #39590284
Агнец за бортом
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
Задам вопрос здесь.

Не совсем понимаю такой момент.

Можно насоздавать юзеров, ролей - но стоит просто "упереть" файлы самой БД и запустить без ключа --auth, то база свободна для доступа.

Я по запаре удалил admina, и ничего больше не могу. Но запустил базу без --auth и заново его создал.

Что это такое?
...
Рейтинг: 0 / 0
26.01.2018, 00:10
    #39591377
it2
it2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
...
Рейтинг: 0 / 0
27.01.2018, 16:37
    #39592194
Агнец за бортом
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
it2,

Ну как бы не совсем. Это же только для энтерпрайза.

Для обыкновенной БД - любой, кто имеет доступ к машине - имеет доступ ко всем базам без проблем вообще?

А чего тогда в принципе париться с ограничениями? Разруливать все права на уровне приложения, а сервер в базе закрыть админской учеткой (и так надо) - нафига все эти телодвижения?
...
Рейтинг: 0 / 0
29.01.2018, 09:12
    #39592598
it2
it2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
Агнец за бортом,

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

Когда очередь дойдет до спасения своих ж... - по степени защищенности оных:
1. (па)роли в бд
2. замок на сервер
3. энтерпрайз с шифрованием
...
Рейтинг: 0 / 0
29.01.2018, 12:11
    #39592706
Агнец за бортом
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
it2Агнец за бортом,

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

Когда очередь дойдет до спасения своих ж... - по степени защищенности оных:
1. (па)роли в бд
2. замок на сервер
3. энтерпрайз с шифрованием

Пользователи базы вообще понятия не имеют о ролях в БД - это рулится приложением и ролями в нём.

Oracle/MS SQL тоже можно запустить с ключом и сдампить всю базу?
...
Рейтинг: 0 / 0
30.01.2018, 13:31
    #39593302
it2
it2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
Агнец за бортомOracle/MS SQL тоже можно запустить с ключом и сдампить всю базу?

а то ! там ключа вообще нет. и sysdba видит все...

sqlplus / as sysdba
select * from dba_objects;
...
Рейтинг: 0 / 0
30.01.2018, 13:33
    #39593305
it2
it2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите настроить авторизацию на базу в MongoDB
Агнец за бортом
Пользователи базы вообще понятия не имеют о ролях в БД - это рулится приложением и ролями в нём.


Это наглая ложь заблуждение
...
Рейтинг: 0 / 0
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / Помогите настроить авторизацию на базу в MongoDB / 17 сообщений из 17, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]