Назад | Перейти на главную страницу

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

Должен ли я создавать пользователя Mongo для каждого физического разработчика, которому нужен доступ к MongoDB, или мы должны просто использовать учетную запись «sysadmin»?

Нас троим нужен полный доступ, и всем нужны одинаковые разрешения. У нас всего несколько тысяч пользователей, и мы не предъявляем никаких особых требований (не в сфере здравоохранения, финансов и т. Д.). Я считаю всех в моей команде надежными и компетентными. У всех есть доступ к sudo, и на сервере нет других учетных записей Linux (кроме apache и т. Д.).

Я обдумываю это, так как настроить нескольких пользователей намного сложнее, а выгода ничтожна. (Если бы член команды ушел, я бы просто сменил пароль). Однако, если есть реальная причина для создания отдельных пользователей (если это помогает проводить аудит / расследования после взлома и т. Д.), Я был бы более чем счастлив сделать это.

Если бы мы поделились, я бы создал простой сценарий bash, чтобы "обернуть" команды mongo, как это, и добавить его в группу, предоставленную нам только трем разработчикам:

#!/bin/bash

/path/to/bin/mongo -u="username" -p="password" $@

Это, в первую очередь, предотвратит выход пароля с сервера.


Первоначально я рассматривал последствия для безопасности написания сценария, подобного приведенному выше, который имеет уникальный пароль для каждого пользователя и имеет файл, принадлежащий им, с 700 разрешения. Предполагается, что хранить пароль «скрытым» от пользователя будет безопаснее, чем хранить его в буфере обмена / на локальном компьютере в произвольном порядке. password.txt файл на своем рабочем столе.

Но я начал думать: нет причин иметь три отдельных аккаунта, если бы мы втроем могли просто sudo cat чтобы все равно увидеть другой пароль.

Я думаю, что заставлять каждого пользователя хранить пароль локально с помощью диспетчера паролей является излишним, поскольку, поскольку у них уже есть sudo, достаточно просто отключить аутентификацию в файле конфигурации Mongo в первую очередь.

Общая учетная запись означает, что сложнее (или невозможно без надлежащего ведения журнала системы / доступа) определить, кто на самом деле вошел в систему, если что-то пойдет не так.

Кроме того, если один из этих людей завершен / уходит, вы не можете удалить ТОЛЬКО его доступ, вам придется изменить пароль для общей учетной записи, как вы сказали.

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

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