Spec-Zone.ru › Ansible 2.11

community.mongodb.mongodb_user – Добавляет или удаляет пользователя из базы данных MongoDB

Примечание

Этот плагин входит в коллекцию community.mongodb (версия 1.2.0).

Для его установки используйте: ansible-galaxy collection install community.mongodb.

Для использования в книге задач укажите: community.mongodb.mongodb_user.

Новый в версии 1.0.0: of community.mongodb

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Добавляет или удаляет пользователя из базы данных MongoDB.

Требования

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

  • pymongo

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_mechanism
строка
    Варианты:
  • SCRAM-SHA-256
  • SCRAM-SHA-1
  • MONGODB-X509
  • GSSAPI
  • PLAIN
Тип аутентификации.
connection_options
список / элементы=сырые
Дополнительные параметры подключения.
Указывать в виде списка словарей или строк, содержащих пары ключ-значение, разделенные знаком «=».
create_for_localhost_exception
путь
Этот параметр полезен только для обработки специального случая исключения localhost.
Если login_user определён, исключение localhost не активен и этот параметр не имеет эффекта.
Если этот файл НЕ существует (и login_user не определён), то создайте этот файл после успешного добавления пользователя.
Если этот файл существует (и login_user не определён), то пропустите эту задачу.
database
строка / обязательно
Имя базы данных, к которой добавляется/удаляется пользователь.

псевдонимы: db
login_database
строка
Значение по умолчанию:
"admin"
База данных, в которой хранятся учетные данные для входа.
login_host
строка
Значение по умолчанию:
"localhost"
Хост, на котором запущен экземпляр MongoDB для входа.
login_password
строка
Пароль для аутентификации.
Обязательно при указании login_user.
login_port
целое число
Значение по умолчанию:
27017
Порт сервера MongoDB для входа.
login_user
строка
Пользователь MongoDB для входа.
Обязательно при указании login_password.
name
строка / обязательно
Имя пользователя для добавления или удаления.

псевдонимы: user
password
строка
Пароль для пользователя.

псевдонимы: pass
replica_set
строка
Реплицируемый набор для подключения (автоматически подключается к первичному для записи).
roles
список / элементы=сырые
Роли пользователя базы данных. Допустимые значения могут быть одной или несколькими из следующих строк: 'read', 'readWrite', 'dbAdmin', 'userAdmin', 'clusterAdmin', 'readAnyDatabase', 'readWriteAnyDatabase', 'userAdminAnyDatabase', 'dbAdminAnyDatabase'
Или следующий словарь '{ db: DATABASE_NAME, role: ROLE_NAME }'.
Этот параметр требует pymongo 2.5+. Если это строка, требуется mongodb 2.4+. Если это словарь, требуется mongo 2.6+.
ssl
булево
    Варианты:
  • нет ←
  • да
Использовать ли SSL-соединение при подключении к базе данных.
ssl_ca_certs
строка
Параметр ssl_ca_certs принимает путь к файлу CA.
ssl_cert_reqs
строка
    Варианты:
  • CERT_NONE
  • CERT_OPTIONAL
  • CERT_REQUIRED ←
Указывает, требуется ли сертификат с другой стороны подключения и будет ли он валидирован, если предоставлен.
ssl_certfile
строка
Предоставить сертификат клиента с помощью параметра ssl_certfile.
ssl_crlfile
строка
Параметр ssl_crlfile принимает путь к файлу CRL.
ssl_keyfile
строка
Приватный ключ для сертификата клиента.
ssl_pem_passphrase
строка
Пароль для расшифровки зашифрованных приватных ключей.
state
строка
    Варианты:
  • отсутствует
  • существует ←
Состояние пользователя базы данных.
update_password
строка
    Варианты:
  • всегда ←
  • при создании
always всегда будет обновлять пароли и заставит модуль вернуть изменения.
on_create будет устанавливать пароль только для вновь созданных пользователей.
Это должно быть always для использования исключения localhost при добавлении первого администратора.

Примечания

Примечание

  • Требуется пакет pymongo Python на удалённом хосте, версия 2.4.2+. Его можно установить с помощью pip или менеджера пакетов ОС. Более новые версии серверов mongo требуют более новые версии pymongo. @см http://api.mongodb.org/python/current/installation.html

Примеры

- name: Create 'burgers' database user with name 'bob' and password '12345'.
  community.mongodb.mongodb_user:
    database: burgers
    name: bob
    password: 12345
    state: present

- name: Create a database user via SSL (MongoDB must be compiled with the SSL option and configured properly)
  community.mongodb.mongodb_user:
    database: burgers
    name: bob
    password: 12345
    state: present
    ssl: True

- name: Delete 'burgers' database user with name 'bob'.
  community.mongodb.mongodb_user:
    database: burgers
    name: bob
    state: absent

- name: Define more users with various specific roles (if not defined, no roles is assigned, and the user will be added via pre mongo 2.2 style)
  community.mongodb.mongodb_user:
    database: burgers
    name: ben
    password: 12345
    roles: read
    state: present

- name: Define roles
  community.mongodb.mongodb_user:
    database: burgers
    name: jim
    password: 12345
    roles: readWrite,dbAdmin,userAdmin
    state: present

- name: Define roles
  community.mongodb.mongodb_user:
    database: burgers
    name: joe
    password: 12345
    roles: readWriteAnyDatabase
    state: present

- name: Add a user to database in a replica set, the primary server is automatically discovered and written to
  community.mongodb.mongodb_user:
    database: burgers
    name: bob
    replica_set: belcher
    password: 12345
    roles: readWriteAnyDatabase
    state: present

# add a user 'oplog_reader' with read only access to the 'local' database on the replica_set 'belcher'. This is useful for oplog access (MONGO_OPLOG_URL).
# please notice the credentials must be added to the 'admin' database because the 'local' database is not synchronized and can't receive user credentials
# To login with such user, the connection string should be MONGO_OPLOG_URL="mongodb://oplog_reader:oplog_reader_password@server1,server2/local?authSource=admin"
# This syntax requires mongodb 2.6+ and pymongo 2.5+
- name: Roles as a dictionary
  community.mongodb.mongodb_user:
    login_user: root
    login_password: root_password
    database: admin
    user: oplog_reader
    password: oplog_reader_password
    state: present
    replica_set: belcher
    roles:
      - db: local
        role: read

- name: Adding a user with X.509 Member Authentication
  community.mongodb.mongodb_user:
    login_host: "mongodb-host.test"
    login_port: 27001
    login_database: "$external"
    database: "admin"
    name: "admin"
    password: "test"
    roles:
    - dbAdminAnyDatabase
    ssl: true
    ssl_ca_certs: "/tmp/ca.crt"
    ssl_certfile: "/tmp/tls.key" #cert and key in one file
    state: present
    auth_mechanism: "MONGODB-X509"
    connection_options:
     - "tlsAllowInvalidHostnames=true"

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
user
строка
успех
Имя пользователя для добавления или удаления.



Авторы

  • Elliott Foster (@elliotttf)
  • Julien Thebault (@Lujeni)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/mongodb/mongodb_user_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API