RLS добавление ограничения доступа к данным по произвольному справочнику через штатные механизмы

Публикация № 1274782

Администрирование - Информационная безопасность

RLS

Решал задачу ограничения доступ к объектам по справочнику "Банковские счета" штатными средствами БСП. Конфигурация КА 2.2. В остальных на БСП должно работать так же. Хотел сделать инструкцию для себя на будущее, решил поделиться.

Итак, настраивал по инструкции //infostart.ru/1c/articles/313468/, спасибо автору. Но, оказалось что сделал немного лишнего, пришлось всё переделывать с начала,  т.к. там была задача создать специальный справочник для отбора контрагентов по нему. У меня же задача немного проще - отбор уже имеющихся объектов по имеющемуся справочнику. Однако эта статья базируется на выше указанной, поэтому я буду копировать кое что из неё.

Результатом будет появление вида отбора "Банковские счета" в штатных механизмах RLS. Поехали:

Откроем доступ на изменение к объектам:
  Определяемый тип: ЗначениеДоступаСГруппамиЗначенийДоступаОбъект

  1. Открываем подписку на событие "ОбновитьГруппыЗначенийДоступа", смотрим на какой определяемый тип она ссылается, у меня это "ЗначениеДоступаСГруппамиЗначенийДоступаОбъект". Добавляем в его тип значений справочник "БанковскиеСчетаКонтрагентов". Это для того чтобы процедура создания штатных групп доступа смогла подхватить наш тип отбора.
  2. Идём в модуль "УправлениеДоступомПереопределяемый" и добавляем код в процедуры:

 

Процедура ПриЗаполненииВидовДоступа(ВидыДоступа) Экспорт
  
   //...............//
   
   // +Наша вставка                      
    ВидДоступа = ВидыДоступа.Добавить();
    ВидДоступа.Имя = "БанковскиеСчета"; // имя вида доступа (используется в ролях для RLS)
    ВидДоступа.Представление    = НСтр("ru = 'Банковские счета'");
    ВидДоступа.ТипЗначений      = Тип("СправочникСсылка.БанковскиеСчетаКонтрагентов"); // критерий ограничения доступа
	// -Наша вставка

КонецПроцедуры


Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт
    
    //...............//

    // +Наша вставка
    // указание прав объектов метаданных, на которые распространяется RLS 
    Описание = Описание + "
	|Справочник.БанковскиеСчетаКонтрагентов.Чтение.БанковскиеСчетаКонтрагентов
	|Справочник.БанковскиеСчетаОрганизаций.Чтение.БанковскиеСчетаОрганизаций
	|";
    // -Наша вставка
    
КонецПроцедуры

 

  1. Запускаем 1С:Предприятие (можно сразу с параметром "ЗапуститьОбновлениеИнформационнойБазы", чтобы виды доступа создались), смотрим какие роли дают доступ к справочнику "Банковские счета". Я пользовался обработкой //infostart.ru/public/845764/.
  2. Идём в каждую роль и редактируем ограничение доступа к данным в ней так, чтобы наш новый отбор работал. Штатные отборы используют штатные шаблоны #ПоЗначениям, #ПоЗначениямРасширенный,  #ПоЗначениямИНаборамРасширенный, #ПоНаборамЗначений. Там всё весьма просто, если разобраться. Разобраться очень помогает статья //infostart.ru/1c/articles/995414/, спасибо Дмитрию. У меня получилось так:

 

Права "ДобавлениеИзменениеИнформацииПоПартнерам", "ЧтениеИнформацииПоПартнерам":

#ПоЗначениямРасширенный( "Справочник.БанковскиеСчетаКонтрагентов","Чтение","",
"ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИерархияПартнеров КАК Т2
ПО Т2.Родитель = Т.Владелец.Партнер",
"((",
"","ТипЗначения(Т.Владелец) = Тип(Справочник.Контрагенты)","И",
"ГруппыПартнеров","Т2.Партнер",")ИЛИ(",
"","ТипЗначения(Т.Владелец) = Тип(Справочник.ФизическиеЛица)","И(",
"ГруппыФизическихЛиц","Т.Владелец","",
"","",")))И",
"БанковскиеСчета","Т.Ссылка","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","" )


Право "СамообслуживаниеВнешнийПользовательИзменениеБанковскихСчетов":

#ПоЗначениямРасширенный( "Справочник.БанковскиеСчетаКонтрагентов","Чтение","",
"ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КонтактныеЛицаПартнеров КАК Т1 ПО Т1.Владелец = Т.Владелец.Партнер
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВнешниеПользователи КАК Т3 ПО Т3.ОбъектАвторизации = Т1.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИерархияПартнеров КАК Т2
ПО Т2.Родитель = Т.Владелец.Партнер",
"(",
"ВнешниеПользователи","Т2.Партнер","ИЛИ",
"ВнешниеПользователи", "Т3.Ссылка",")И",
"БанковскиеСчета","Т.Ссылка","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","")


Право "УдаленныйДоступСтандартныйИнтерфейсOData":

#ПоЗначениям("Справочник.БанковскиеСчетаКонтрагентов","Чтение","",
"БанковскиеСчета","Ссылка",
"","","","","","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","" )

При этом в роли "УдаленныйДоступСтандартныйИнтерфейсOData" отсутствовали шаблоны, поэтому я скопировал туда шаблон "ПоЗначениям" из роли "ПолныеПрава" и создал новое ограничение доступа к данным для "<прочие поля>"

  1. Запускаем 1С:Предприятие с параметром "ЗапуститьОбновлениеИнформационнойБазы", если ранее параметр не ставили. Если ставили - убираем. Идем НСИ и администрирование -> Администрирование -> Настройка пользователей и прав, выбираем нужный профиль, идём на вкладку "Ограничение доступа", добавляем ограничение по банковским счетам.
  2. Создаём группу доступа, указываем наш профиль, добавляем туда пользователей и проверяем что доступ к справочнику "Банковские счета" работает корректно.
  3. Самое нудное и неприятное. Проделываем пункт 4 для каждого объекта, к которому должна быть возможность ограничивать доступ по банковским счетам.

 

Для выполнения п. 7 планирую написать обработку, которая поможет автоматизировать эту нужную процедуру. Т.к. править роли программно нельзя, предположительно, обработка будет не на 1С и будет работать с базой данных или конфигурационными файлами. С радостью приму советы по этому поводу, всем спасибо!

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. ER34 17 06.08.20 16:26 Сейчас в теме
В комментарии к шаблону #ПоЗначениям() написано:

В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения
// производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц",
// чем использовать несколько блоков параметров, с одним и тем же именем поля.

Как показала практика - это не правда, так делать нельзя. Выходом является использование шаблона #ПоЗначениямРасширенный:
#ПоЗначениямРасширенный(....
"(",
       "Организации","Организация", "ИЛИ",
	"ГруппыФизическихЛиц","Организация", 
")",.....)


Поправьте, если я не прав
2. nixel 922 08.08.20 13:01 Сейчас в теме
Есть ли смысл в перепечатывании документации по БСП, причем в вашем случае актуальной только для конкретной версии БСП? Почему не открыть ИТС и не выполнить подключение справочника по инструкции, описанной там?
ER34; ShiningPhoenix; +2 Ответить
Оставьте свое сообщение

См. также

Библиотека стандартных подсистем (Механизм БСП) Промо

Практика программирования БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

Конфигурации в 1С пишутся для пользователей и по их «правилам» (клиент всегда прав), поэтому в основном все конфигурации разные, но достаточно часто в них используются одни и те же объекты, которые незначительно отличаются друг от друга. Действительно, сложно представить конфигурацию, где не фигурировали бы такие сущности как номенклатура, контрагенты, пользователи, валюта. И некоторые задачи являются типичными: возможность базового разграничения прав, работа с электронной почтой, задачи пользователям и т.д. Но...!

03.03.2017    68128    V.Stavinsky    21    

Разработка функционала обмена с несколькими внешними точками

Обмен данными 1С БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

В статье приводятся несколько практических советов по организации обмена с несколькими точками, прежде всего «не 1С». Рассматривается создание плана обмена, использование параметров, программирование и настройка регламентных заданий. Доработка системы проводится без изменения конфигурации с использованием расширения и внешней обработки.

21.09.2020    389    Sergey1CSpb    2    

Работаем с контактной информацией в конфигурациях на БСП

Практика программирования БСП (Библиотека стандартных подсистем) v8 1cv8.cf Россия Бесплатно (free)

В статье приведены базовые работы с контактной информацией в конфигурациях, включающих в себя БСП.

14.09.2020    1149    quazare    2    

Базовые вещи БСП, которые облегчат жизнь программисту 1С

Практика программирования БСП (Библиотека стандартных подсистем) v8 1cv8.cf Россия Бесплатно (free)

В данной публикации я опишу полезные процедуры и функции модуля общего назначения библиотеки стандартных подсистем, обязательные к использованию любым программистом 1С.

30.08.2020    6266    quazare    32    

Права доступа в 1С:Документооборот 2.1 Промо

Информационная безопасность Документооборот и делопроизводство Документооборот и делопроизводство v8 ДО Бесплатно (free)

В программе 1С:Документооборот ред 2.1 механизм системы прав доступа сильно изменился. С одной стороны, права доступа в данной версии стали проще и быстрее, с другой стороны - права по рабочим группам объектов теперь могут противоречить политикам доступа. Разберемся в данной статье как работает механизм прав доступа в 1с документообороте 2.1.

16.09.2016    73970    vlush78    0    

Выполнение внешней обработки по расписанию для управляемого и обычного приложения

БСП (Библиотека стандартных подсистем) Универсальные функции v8 1cv8.cf Россия Бесплатно (free)

Использование БСП для выполнения внешних обработок в управляемом и обычном приложении

06.08.2020    975    RPGrigorev    0    

Изменение RLS в ЗУП 3.1 для ограничения доступа к списку сотрудников

Роли и права v8 v8::Права ЗУП3.x Россия Бесплатно (free)

При переезде из УПП в ЗУП 3.1 бизнесом было поставлено условие, система должна ограничивать видимость сотрудников по подразделениям организации. Позиция 1С по этому вопросу однозначна, так делать нельзя. Но с определенными оговорками и условиями можно...

10.07.2020    1801    Zhilyakovdr    0    

Возможности работы со строками при помощи БСП, которые должен знать каждый программист

Практика программирования БСП (Библиотека стандартных подсистем) v8 Бесплатно (free)

Переходим на следующий уровень работы со строками, уходим от типовых возможностей платформы. Узнаем, как применить функционал БСП конфигурации.

05.07.2020    7747    quazare    36    

Доработки RLS. Примеры шаблонов. (в т.ч исключения из ограничений) Промо

Информационная безопасность v8 Бесплатно (free)

Допиливаем шаблоны RLS. Даем доступ пользователям к некоторым объектам

19.06.2013    63064    EvilDoc    38    

Безопасность мобильных приложений 1С, взгляд по диагонали

Информационная безопасность Мобильная разработка v8::Mobile 1cv8.cf Бесплатно (free)

Что приходит первое в голову при словах «1С Предприятие»? Даже тем, кто далек от ИТ, представляется большущий компьютер (а тем, кто недалек, стойка двух-юнитных серверов), рядом слушает музыку сервера (как вариант просто музыку) сисадмин, за стеной в опен-спейсе менеджеры принимают заказы и бухгалтерия, сдающая отчетность. «Зарплата, зарплата!»: слышны их радостные крики. «И кадры»: уточняет HR. Да, все верно. Это 1С. Кто в теме, напомнит про крики не совсем приятные: «Все тормозит! Сделайте что-нибудь, #тыжпрограммист». И борющихся за живучесть ИТ-шников. В обычном офисном потоке дел, редко кто задумывается о безопасности. А тех, кто задумывается, прошу под кат…

05.06.2020    3258    capitan    32    

Мастер-класс "Ведение проектов в типовых конфигурациях 1С"

Управление проектом CI/CD БСП (Библиотека стандартных подсистем) v8 Бесплатно (free)

При адаптации типовой конфигурации под особенности учета в компании важно обеспечить возможность легкого обновления поставки. Как организовать архитектуру решения и продумать процесс быстрой и эффективной разработки без ущерба типовой функциональности, на конференции Infostart Event 2019 Inception рассказал ведущий программист компании BIA-Teсhnologies Алексей Князьков.

05.06.2020    3820    AKnyazkov    3    

Способ хранения данных расширения или дополнительной обработки

БСП (Библиотека стандартных подсистем) Практика программирования v8 Бесплатно (free)

Описание способа хранения данных расширения или дополнительной обработки в информационной базе с использованием функционала Библиотеки стандартных подсистем.

01.06.2020    3431    Sedaiko    17    

Тестируем быстро. Запуск сеанса под другим пользователем за 6 секунд!

Роли и права Пароли v8 v8::Права 1cv8.cf Бесплатно (free)

Как часто вам приходится запускать отладку под другим пользователем? Сколько времени у вас занимает запуск "чужого" сеанса? Убрать (если имеется) у себя аутентификацию ОС, сбросить пароль пользователя и восстановить его потом и т.д. Есть простой и действенный код, который поможет запускать сеансы под другим пользователем без ручной смены параметров аутентификации.

06.05.2020    3953    feva    15    

Переопределение настроек отчета на СКД. 1С: БСП

БСП (Библиотека стандартных подсистем) v8::СКД ERP2 Россия Бесплатно (free)

Изменение настроек СКД отчета без доработки модулей БСП

24.04.2020    2903    klimsrv    6    

Картинка в форме списка номенклатуры для УТ 11.4

БСП (Библиотека стандартных подсистем) Практика программирования v8 1cv8.cf Россия Бесплатно (free)

В публикации приведу код позволяющий выводить картинку номенклатуры в форме списка.

23.03.2020    1781    malikov_pro    1    

Полезные функции БСП (Часть 2)

БСП (Библиотека стандартных подсистем) v8 1cv8.cf Россия Бесплатно (free)

Список полезных функций из состава Библиотеки стандартных подсистем 3.1.

10.03.2020    11830    user5300    18    

Механизмы проведения документов при обмене по универсальному формату

Перенос данных из 1C8 в 1C8 БСП (Библиотека стандартных подсистем) v8 Бесплатно (free)

Как проводятся документы при обмене по универсальному формату. Пример доработки типовых правил обмена с переносом состояния документа: проведен/не поведен/пометка удаления.

04.03.2020    4747    partizand    6    

[БСП] Внешняя печатная форма: как перед печатью выводить форму настроек

Печатные формы документов БСП (Библиотека стандартных подсистем) v8 КА2 Бесплатно (free)

Во внешней печатной форме перед печатью нужно выводить форму настроек. Для примера рассматриваю печатную форму "Акт сверки взаимных расчетов " .

19.12.2019    10669    John_d    8    

Права пользователя исключительно на просмотр (чтение) для УТ 11.4

Роли и права v8 v8::Права УТ11 Россия Бесплатно (free)

Простая и понятная инструкция по шагам для создания профиля группы доступа «Только чтение» для УТ 11.4. Выполняется в режиме пользователя, без использования конфигуратора и снятия базы с поддержки.

21.11.2019    6227    Aleksandr55555    8    

Реализация печати QR кодов "Библиотека стандартных подсистем", редакция 3.1 (3.1.1.151)

БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

Рассмотрим, как реализовать печать QR кодов с помощью механизмов БСП.

16.10.2019    6560    paulis    4    

Реализация команды печати "Библиотека стандартных подсистем", редакция 3.1 (3.1.1.151)

БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

В новом релизе "БСП" произошли изменения в процедурах общих модулей, связанных с механизмом печати, и в процедурах их вызова в формах документов и в формах списков. Рассмотрим их.

12.10.2019    5734    paulis    4    

Шпаргалка (БСП). Добавление в новый документ механизма печати дополнительных печатных форм

Печать БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

Постоянно приходится вспоминать, как добавить механизм печати (БСП) в новый документ. Поэтому решил написать шпаргалку.

10.10.2019    17166    John_d    14    

Типичные ошибки при разработке прав доступа

Роли и права v8 v8::Права Бесплатно (free)

Рассмотрим самые распространенные ошибки в разработке прав доступа.

02.10.2019    19460    YPermitin    57    

От чего можно отказаться при разработке расширений 1С

Практика программирования БСП (Библиотека стандартных подсистем) Расширения v8 Бесплатно (free)

Разработка расширений 1С и оптимизация через механизм БСП: Дополнительные отчеты и обработки.

23.09.2019    10535    independ    24    

БСП: Дополнительные отчеты и обработки - одна обработка, несколько форм

Практика программирования Работа с интерфейсом БСП (Библиотека стандартных подсистем) v8 Бесплатно (free)

Как в одной дополнительной обработке разместить несколько форм с типом команды "ОткрытиеФормы"?

29.07.2019    10768    dsdred    9    

Проверка наличия роли у пользователя

Роли и права v8 v8::Права 1cv8.cf Бесплатно (free)

Допустим, мы добавили новую роль в конфигурацию. Потом добавили её в профиль группы доступа и назначили соответствующую группу доступа пользователю. Однако, в конфигурациях на основе БСП все известные программные проверки данной роли при включении пользователя в предопределенную группу доступа "Администраторы" не работают. В статье приведено решение данной задачи.

29.06.2019    17700    ni_cola    15    

Назад в прошлое! Небольшие заметки по администрированию пользователей в УПП

Роли и права v8 УПП1 Бесплатно (free)

Небольшие заметки по функционалу "Администрирование пользователей" конфигурации "Управление производственным предприятием" версии 1.3. Затрагиваются такие темы как: роли, профили доступа, дополнительные права, настройки пользователей и ограничения доступа на уровне записей (RLS).

06.06.2019    13283    YPermitin    18    

Подсистема "Варианты отчетов". Используете ли Вы ее правильно?

Работа с интерфейсом БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

Небольшая история про использование подсистемы "Варианты отчетов" из БСП. Используете ли Вы ее правильно?

04.06.2019    41174    YPermitin    52    

Подсистема БСП «Управление доступом», основные объекты и регистры

БСП (Библиотека стандартных подсистем) Роли и права v8 v8::УФ v8::Права 1cv8.cf Бесплатно (free)

Основные принципы работы подсистемы «Управление доступом» из состава БСП. Виды доступа, ограничение доступа на уровне записей. Описание основных объектов и регистров, используемых подсистемой.

23.05.2019    21897    ids79    9    

Как программно открыть внешний отчет из "Дополнительных отчетов и обработок" и передать параметры (при помощи БСП)

Практика программирования БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

Пример, как при помощи БСП программно открыть внешний отчет/обработку из "Дополнительные отчеты и обработки" и передать параметры...

25.03.2019    23157    ellavs    12    

Добавление отчетов в типовые конфигурации 1С

Практика программирования Универсальные функции БСП (Библиотека стандартных подсистем) v8::УФ v8::СКД 1cv8.cf Бесплатно (free)

Описание различных способов добавления общих и контекстных отчетов в конфигурации 1С, построенные на базе БСП. Основные моменты и нюансы.

07.03.2019    53595    ids79    46    

Возможности типовых шаблонов ограничения доступа на уровне записей (RLS)

Практика программирования БСП (Библиотека стандартных подсистем) Роли и права v8 v8::Права Бесплатно (free)

Краткий обзор применения типовых шаблонов ограничения доступа на уровне записей в конфигурациях, созданных на базе БСП: #ПоЗначениям, #ПоНаборамЗначений, #ПоЗначениямРасширенный, #ПоЗначениямИНаборамРасширенный

03.02.2019    39250    ids79    9    

Влияние настройки роли на потребление памяти

Роли и права v8::Права 1cv8.cf Бесплатно (free)

На днях разбирался с проблемой с потреблением памяти процессами конфигуратора и rphost. Как оказалось - причина в настройках ролей. Один поворот не туда, и настройки роли приводят к чрезмерному потреблению оперативки.

29.01.2019    13397    mickey.1cx    14    

Использование утилиты ring для выяснения данных о программных лицензиях

Информационная безопасность v8 Бесплатно (free)

Использование утилиты ring для управления программными лицензиями без ее установки на компьютер пользователя.

22.12.2018    11213    Vovan58    20    

Отчет по правам, ролям и профилям групп доступа пользователей, с возможностью их изменения, сравнение прав конфигураций

Роли и права v8::УФ v8::Права ERP2 УТ11 КА2 Казахстан Абонемент ($m)

Простой универсальный отчет по правам пользователей, позволяет искать через какую роль предоставляется доступ тому или иному пользователю к объекту конфигурации, а так же добавлять и удалять роли выбранным пользователям и профилям групп доступа пользователей. Проверено на платформе: 1С: Предприятие 8.3 (8.3.11.2954) с конфигурацией "Комплексная автоматизация для Казахстана, редакция 2" релиз (2.1.3.11). Будет работать на конфигурациях 1С (УТ, КА, ERP) в управляемых формах, в толстом клиенте.

1 стартмани

12.06.2018    12472    155    romanpl777    2    

Доработка RLS для УНФ

Роли и права v8::Права 1cv8.cf Бесплатно (free)

Инструкция для тех, кто столкнулся с RLS на управляемых формах впервые и не знает, с чего начать.

14.05.2018    16291    FesenkoA    7    

Решение проблемы автоматического утверждения расчета кадровиком документов. Разграничение прав кадровиков и расчетчиков. ЗУП 3.1

Информационная безопасность Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 v8::СПР v8::Права ЗУП3.x БУ Бесплатно (free)

Статья посвящена тем, кто столкнулся с проблемой автоматической установки "Расчет утвердил". Также рассматривается решение проблемы с отображением ФОТ и оклада у кадровика. Добавление роли ЧтениеДанныхДляНачисленияЗарплатыРасширенная кадровику без последствий для расчетчика.

04.04.2018    24203    leaderonex    23    

Проверка безопасности установленных паролей

Информационная безопасность v8 Бесплатно (free)

Код выводит не установленные пароли, а так же очень простые (1, 123) пароли пользователей. Список можно пополнять.

08.03.2018    9610    nomadon    12    

Информирование об утечке базы 1С

Информационная безопасность v8 1cv8.cf Бесплатно (free)

Когда работаешь в крупном холдинге, количество сотрудников, имеющих доступ к базам 1С неизменно растет. Рано или поздно появится задача по контролю утечки баз 1С. Конечно мы применим все меры по предотвращению утечки баз, но и информирование о случаях утечки тоже не повредит.

03.03.2018    13901    dima_home    81    

Отключаем предупреждения безопасности в 1С 8.3.9 и выше вручную

Информационная безопасность v8 v8::УФ v8::Права 1cv8.cf Бесплатно (free)

Как включить/выключить механизм защиты от опасных действий реализованный в новой версии платформы 1С:Предприятие 8.3.9. Одним из нововведений новой версии платформы 1С:Предприятие 8.3.9 стал механизм от опасных действий. После установки новой версии платформы 1С (начиная версии 8.3.9.2033) при попытке открыть внешнюю обработку или расширение программа выдает сообщение..

01.11.2017    43422    webresurs    10    

Управление доступом: роли, права, профили, группы доступа, функциональные опции, RLS

Роли и права v8::Права Бесплатно (free)

В 1С достаточно много механизмов, отвечающих за доступ к данным. Группы доступа, профили групп доступа, роли, права доступа, функциональные опции, RLS. Иногда сложно сразу понять, зачем все это нужно, как эти элементы друг с другом связаны и как ими пользоваться.

11.10.2017    91264    ekaruk    14