Перейти к основному содержимому

Получить пользователей

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

Функция ПолучитьПользователей(Знач Соединение, Знач Пользователи, Знач База = Неопределено, Знач ПолучатьПароль = Ложь, Знач ПолучатьПривилегии = Ложь) Экспорт

ПараметрCLI опцияТипОбяз.Назначение
Соединение--dbcСтрока, ПроизвольныйСоединение или строка подключения
Пользователи--usrsПроизвольныйИмя пользователя, структура или массив структур пользователей
База--dbСтрокаИмя базы. Текущая база, если не указано
ПолучатьПароль--spwdБулевоДобавляет хеш пароля пользователя в возвращаемые данные
ПолучатьПривилегии--sprvБулевоДобавляет список привилегий пользователя в возвращаемые данные
Возвращаемое значение

Соответствие Из КлючИЗначение - Результат выполнения операции

подсказка

Пользователь может быть указан в одном из следующих форматов:
Строка: имя пользователя
Структура: { user: <имя>, db: <база данных> }
Массив: [ { user: <имя>, db: <база данных> }, { user: <имя>, db: <база данных> }, ... ]


Пример использования для 1С:Предприятие/OneScript
Адрес = "127.0.0.1:1234";
Логин = "bayselonarrend";
Пароль = "12we...";
База = "main";

ПараметрыПодключения = Новый Структура("authSource", "admin");
СтрокаПодключения = OPI_MongoDB.СформироватьСтрокуПодключения(Адрес, , Логин, Пароль, ПараметрыПодключения);
Соединение = OPI_MongoDB.ОткрытьСоединение(СтрокаПодключения);

ИмяПользователя = "newuser";

Результат = OPI_MongoDB.ПолучитьПользователей(Соединение, ИмяПользователя, База);

МассивПользователей = Новый Массив;
МассивПользователей.Добавить(Новый Структура("user,db", "bayselonarrend", "admin"));
МассивПользователей.Добавить(Новый Структура("user,db", "newuser" , "main"));

Результат = OPI_MongoDB.ПолучитьПользователей(Соединение, МассивПользователей, База, Истина, Истина);
# JSON данные также могут быть переданы как путь к файлу .json

oint mongodb ПолучитьПользователей \
--dbc "mongodb://bayselonarrend:12we3456!2154@127.0.0.1:27017/?authSource=admin" \
--usrs "[{'user':'bayselonarrend','db':'admin'},{'user':'newuser','db':'main'}]" \
--db "main" \
--spwd true \
--sprv true
Результат
{
"result": true,
"data": {
"users": [
{
"_id": "admin.bayselonarrend",
"userId": {
"__B64_BINARY__": "EjWtfR/yQgGol18zZoi5HA=="
},
"user": "bayselonarrend",
"db": "admin",
"mechanisms": [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
],
"credentials": {
"SCRAM-SHA-1": {
"iterationCount": 10000,
"salt": "Qav4apyB+3UkB53eZtIiEA==",
"storedKey": "***",
"serverKey": "***"
},
"SCRAM-SHA-256": {
"iterationCount": 15000,
"salt": "nLO0xnlSs9iMSpmKP3tEv0hCiwk7helxkaomuQ==",
"storedKey": "***",
"serverKey": "***"
}
},
"roles": [
{
"role": "root",
"db": "admin"
}
],
"inheritedRoles": [
{
"role": "root",
"db": "admin"
}
],
"inheritedPrivileges": [
{
"resource": {
"cluster": true
},
"actions": [
"addShard",
"allCollectionStats",
"appendOplogNote",
"applicationMessage",
"auditConfigure",
"authSchemaUpgrade",
"bypassWriteBlockingMode",
"cleanupOrphaned",
"connPoolStats",
"connPoolSync",
"dropConnections",
"flushRouterConfig",
"forceUUID",
"fsync",
"getClusterParameter",
"getDefaultRWConcern",
"getCmdLineOpts",
"getLog",
"getParameter",
"getShardMap",
"hostInfo",
"inprog",
"invalidateUserCache",
"killAnyCursor",
"killAnySession",
"killop",
"listDatabases",
"listSessions",
"listShards",
"logRotate",
"netstat",
"oidReset",
"operationMetrics",
"queryStatsRead",
"queryStatsReadTransformed",
"removeShard",
"replSetConfigure",
"replSetGetConfig",
"replSetGetStatus",
"replSetResizeOplog",
"replSetStateChange",
"resync",
"rotateCertificates",
"runTenantMigration",
"serverStatus",
"setClusterParameter",
"setDefaultRWConcern",
"setFeatureCompatibilityVersion",
"setParameter",
"setUserWriteBlockMode",
"shardedDataDistribution",
"shardingState",
"shutdown",
"top",
"touch",
"trafficRecord",
"unlock",
"useTenant",
"useUUID",
"viewUser",
"applyOps"
]
},
{
"resource": {
"db": "",
"collection": ""
},
"actions": [
"bypassDocumentValidation",
"changeCustomData",
"changePassword",
"changeStream",
"clearJumboFlag",
"collMod",
"collStats",
"compact",
"compactStructuredEncryptionData",
"convertToCapped",
"createCollection",
"createIndex",
"createRole",
"createSearchIndexes",
"createUser",
"dbHash",
"dbStats",
"dropCollection",
"dropDatabase",
"dropIndex",
"dropSearchIndex",
"dropRole",
"dropUser",
"enableProfiler",
"enableSharding",
"find",
"getDatabaseVersion",
"getShardVersion",
"grantRole",
"indexStats",
"insert",
"killCursors",
"listCachedAndActiveUsers",
"listCollections",
...