---
sidebar_position: 3
description: Получить роли и другие функции для работы с MongoDB в Открытом пакете интеграций - бесплатной open-source библиотеке интеграций для 1С:Предприятие 8, OneScript и CLI
keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3, API, Интеграция, Сервисы, Обмен, OneScript, CLI, MongoDB]
---

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# Получить роли
 Получает информацию об указанных полях



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

  | Параметр | CLI опция | Тип | Обяз. | Назначение |
  |-|-|-|-|-|
  | Соединение | --dbc | Строка, Произвольный | &#x2714; | Соединение или строка подключения |
  | МассивРолей | --roles | Произвольный | &#x2714; | Роль или список ролей |
  | База | --db | Строка | &#x2716; | Имя базы. Текущая база, если не указано |
  | ПолучатьПривелегии | --sprv | Булево | &#x2716; | Добавляет список привелегий ролт в возвращаемые данные |

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



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

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

    Роль = Новый Структура("role,db", "newrole", База);

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

 <Tabs>
  
    <TabItem value="bash" label="Bash" default>
        ```bash
            # JSON данные также могут быть переданы как путь к файлу .json
            
            oint mongodb ПолучитьРоли \
              --dbc "mongodb://bayselonarrend:12we3456!2154@127.0.0.1:27017/?authSource=admin" \
              --roles "{'role':'newrole','db':'admin'}" \
              --db "admin" \
              --sprv true
        ```
    </TabItem>
  
    <TabItem value="bat" label="CMD/Bat" default>
        ```batch
            :: JSON данные также могут быть переданы как путь к файлу .json
            
            oint mongodb ПолучитьРоли ^
              --dbc "mongodb://bayselonarrend:12we3456!2154@127.0.0.1:27017/?authSource=admin" ^
              --roles "{'role':'newrole','db':'admin'}" ^
              --db "admin" ^
              --sprv true
        ```
    </TabItem>
</Tabs>


```json title="Результат"
{
 "result": true,
 "data": {
  "roles": [
   {
    "_id": "admin.newrole",
    "role": "newrole",
    "db": "admin",
    "privileges": [
     {
      "resource": {
       "db": "admin",
       "collection": "new_collection"
      },
      "actions": [
       "***",
       "***",
       "***"
      ]
     }
    ],
    "roles": [
     {
      "role": "read",
      "db": "admin"
     },
     {
      "role": "userAdmin",
      "db": "admin"
     }
    ],
    "inheritedRoles": [
     {
      "role": "read",
      "db": "admin"
     },
     {
      "role": "userAdmin",
      "db": "admin"
     }
    ],
    "inheritedPrivileges": [
     {
      "resource": {
       "db": "admin",
       "collection": "new_collection"
      },
      "actions": [
       "***",
       "***",
       "***"
      ]
     },
     {
      "resource": {
       "db": "admin",
       "collection": ""
      },
      "actions": [
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***"
      ]
     },
     {
      "resource": {
       "db": "admin",
       "collection": "system.js"
      },
      "actions": [
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***",
       "***"
      ]
     }
    ],
    "isBuiltin": false
   }
  ],
  "ok": 1
 }
}
```
