Модуль community.mongodb.mongodb_role – Добавляет или удаляет роль в базе данных MongoDB
Примечание
Этот модуль является частью коллекции community.mongodb (версия 1.7.7).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.mongodb. Для использования этого модуля требуются дополнительные зависимости. Подробнее см. Требования.
Для использования в playbook используйте: community.mongodb.mongodb_role.
Новая функция в community.mongodb 1.5.0
Описание
- Добавляет или удаляет роль в базе данных MongoDB.
- Дополнительную информацию о требуемом формате привилегий, ограничений аутентификации или ролей см. в документации MongoDB https://www.mongodb.com/docs/manual/reference/command/createRole/
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- pymongo
Параметры
Параметр | Комментарии |
|---|---|
atlas_auth boolean | Путь аутентификации, предназначенный для экземпляров MongoDB Atlas Варианты:
|
auth_mechanism string | Тип аутентификации. Варианты:
|
authenticationRestrictions list / elements=any | Ограничения аутентификации, применяемые сервером к роли. Указывает список IP-адресов и диапазонов CIDR, к которым пользователи, которым предоставлена эта роль, могут подключаться и/или с которых они могут подключаться. Предоставьте список словарей со следующими полями: clientSource (список), serverAddress (список). Предоставьте пустой список, если вы не хотите использовать это поле. Значение по умолчанию: |
connection_options list / elements=any | Дополнительные параметры подключения. Укажите в виде списка словарей или строк, содержащих пары ключ-значение, разделенные символом «=». |
database aliases: db string / required | Имя базы данных, к которой нужно добавить/удалить роль. |
debug boolean | Включить дополнительный вывод отладки. Варианты:
|
login_database string | База данных, где хранятся учетные данные для входа. Значение по умолчанию: |
login_host string | Хост, на котором запущен экземпляр MongoDB для входа. Значение по умолчанию: |
login_password string | Пароль, используемый для аутентификации. Обязательно, если указан login_user. |
login_port integer | Порт сервера MongoDB для входа. Значение по умолчанию: |
login_user string | Пользователь MongoDB для входа. Обязательно, если указан login_password. |
name aliases: user string / required | Имя роли для добавления или удаления. |
privileges list / elements=any | Права, предоставляемые роли. Право состоит из ресурса и разрешенных действий. Значение по умолчанию: |
replica_set string | Репликационный набор для подключения (автоматически подключается к основному для записи). |
roles list / elements=any | Роли пользователей базы данных должны быть предоставлены в виде словаря с ключами db и role. Значение по умолчанию: |
ssl aliases: tls boolean | Использовать ли SSL-соединение при подключении к базе данных. Варианты:
|
ssl_ca_certs aliases: tlsCAFile string | Параметр ssl_ca_certs принимает путь к файлу CA. |
ssl_cert_reqs aliases: tlsAllowInvalidCertificates string | Указывает, требуется ли сертификат от другой стороны соединения и будет ли он проверен, если предоставлен. Варианты:
|
ssl_certfile aliases: tlsCertificateKeyFile строка | Укажите сертификат клиента с помощью параметра ssl_certfile. |
ssl_crlfile строка | Параметр ssl_crlfile принимает путь к файлу CRL. |
ssl_keyfile строка | Приватный ключ для сертификата клиента. |
ssl_pem_passphrase aliases: tlsCertificateKeyFilePassword строка | Пароль для расшифровки зашифрованных приватных ключей. |
state строка | Состояние пользователя базы данных. Варианты:
|
strict_compatibility логическое | Включить строгие требования к версиям pymongo и MongoDB. Варианты:
|
Примечания
Примечание
- Требуется пакет pymongo Python на удаленном хосте, версия 4+ . Его можно установить с помощью pip или менеджера пакетов ОС. Более новые версии сервера mongo требуют более новые версии pymongo. @see https://www.mongodb.com/docs/languages/python/pymongo-driver/current/compatibility/
Примеры
- name: Create sales role
community.mongodb.mongodb_role:
name: sales
database: salesdb
privileges:
- resource:
db: salesdb
collection: ""
actions:
- find
state: present
- name: Create ClusterAdmin Role
community.mongodb.mongodb_role:
name: myClusterwideAdmin
database: admin
privileges:
- resource:
cluster: true
actions:
- addShard
- resource:
db: config
collection: ""
actions:
- find
- update
- insert
- remove
- resource:
db: "users"
collection: "usersCollection"
actions:
- update
- insert
- remove
- resource:
db: ""
collection: ""
actions:
- find
roles:
- role: "read"
db: "admin"
state: present
- name: Create ClusterAdmin Role with a login only from 127.0.0.1 restriction
community.mongodb.mongodb_role:
name: myClusterwideAdmin
database: admin
privileges:
- resource:
cluster: true
actions:
- addShard
- resource:
db: config
collection: ""
actions:
- find
- update
- insert
- resource:
db: "users"
collection: "usersCollection"
actions:
- update
- insert
- remove
- resource:
db: ""
collection: ""
actions:
- find
roles:
- role: "read"
db: "admin"
- role: "read"
db: "mynewdb"
authenticationRestrictions:
- clientSource:
- "127.0.0.1"
serverAddress: []
state: present
- name: Delete sales role
community.mongodb.mongodb_role:
name: sales
database: "salesdb"
state: absent
- name: Delete myClusterwideAdmin role
community.mongodb.mongodb_role:
name: myClusterwideAdmin
database: admin
state: absent
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
user строка | Имя роли для добавления или удаления. Возвращается: success |
Ссылки на коллекции
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/mongodb/mongodb_role_module.html