кодесурса
«MongoDB

MongoDB: метод db.updateUser ()

script1adsense2code
script1adsense3code

db.updateUser ()

Метод db.updateUser () используется для обновления профиля пользователя в базе данных, в которой вы запускаете метод. Обновление поля полностью заменяет значения предыдущего поля. Это включает в себя обновления массива ролей пользователя.

Синтаксис:

 db.updateUser (
   "<Имя пользователя>",
   {
     customData: {<любая информация>},
     роли: [
               {role: "<role>", db: "<database>"} | "<Роль>",
               ...
             ],
     pwd: "<пароль открытого текста>"
    },
    writeConcern: {<write беспокойство>}
)

Параметры:

название Описание Необходимые /
Необязательный
Тип
имя пользователя Имя пользователя для обновления. необходимые строка
Обновить Документ, содержащий данные о замене для пользователя. Эти данные полностью заменяют соответствующие данные для пользователя. необходимые документ
writeConcern Уровень записи касается операции обновления. Документ writeConcern принимает те же поля, что и команда getLastError. Необязательный документ

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

Документ обновления имеет следующие поля:

название Описание Необходимые /
Необязательный
Тип
CustomData Любая произвольная информация. Необязательный документ
роли Роли, предоставленные пользователю. Обновление массива ролей переопределяет значения предыдущего массива. Необязательный массив
PWD Пароль пользователя. Необязательный строка

В поле ролей вы можете указать как встроенные роли, так и определенные пользователем роли.

Чтобы указать роль, которая существует в той же базе данных, где выполняется db.updateUser (), вы можете указать роль с именем роли:

"readWrite"

Или вы можете указать роль с документом, как в:

{ role: "<role>", db: "<database>" }

Чтобы указать роль, которая существует в другой базе данных, укажите роль с документом.

Пример: MongoDB: метод db.updateUser ()

Предоставлен пользователь mynewuser в тестовой базе данных со следующей информацией о пользователе:

> db.getUser("mynewuser");
{
        "_id" : "test.mynewuser",
        "user" : "mynewuser",
        "db" : "test",
        "roles" : [
                {
                        "role" : "readWrite",
                        "db" : "test"
                },
                {
                        "role" : "dbAdmin",
                        "db" : "test"
                }
        ]
}

следующий метод db.updateUser () полностью заменяет данные ролей пользователя:

db.updateUser( "mynewuser",
               {
                 customData : { employeeId : "0x3039" },
                 roles : [
                           { role : "read", db : "assets"  }
                         ]
                }
             );

Пользователь mynewuser в тестовой базе данных теперь имеет следующую информацию о пользователе:

> db.getUser("mynewuser");
{
        "_id" : "test.mynewuser",
        "user" : "mynewuser",
        "db" : "test",
        "roles" : [
                {
                        "role" : "read",
                        "db" : "assets"
                }
        ],
        "customData" : {
                "employeeId" : "0x3039"
        }
}

Получить данные о ресторанах здесь

Поведение

db.updateUser () отправляет пароль к экземпляру MongoDB без шифрования.

Требуемый доступ

У вас должен быть доступ, включающий действие revokeRole во всех базах данных, чтобы обновить массив ролей пользователя.

У вас должно быть действие grantRole для базы данных роли, чтобы добавить роль пользователю.

Чтобы изменить поле pwd или customData другого пользователя, необходимо иметь действия changeAnyPassword и changeAnyCustomData соответственно в базе данных этого пользователя.

Чтобы изменить свой собственный пароль и пользовательские данные, вы должны иметь привилегии, которые предоставляют действия changeOwnPassword и changeOwnCustomData соответственно в базе данных пользователя.

Предыдущая: метод db.createUser ()
Далее: метод db.changeUserPassword ()

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code