Удаленный доступ к объекту

Объектнал ссылка специального типа IOR (Interoperable Object Reference) — это стандартный формат объектной ссылки для распределенных объектов. Каждый CORBA-объект имеет IOR-ссылку. IOR-ссылка — это дескриптор, который уникально идентифицирует объект. В то время как обычный указатель содержит простой машинный адрес для объекта, IOR-ссылка может содержать номер порта, имя хоста (имя компьютера в сети), объектный ключ и пр. В С++ для доступа к динамически создаваемым объектам используется указатель. Указатель содержит информацию о том, где в памяти компьютера расположен объект. При разыменовании указателя на объект используется полученный адрес для доступа к членам этого объекта. Однако процесс разыменования указателя на объект (с целью получения доступа к нему) требует больших усилий, когда этот объект находится в другом адресном пространстве и, возможно, на другом компьютере. Указатель в этом случае должен содержать достаточно информации, чтобы сообщить точное местоположение объекта. Если объект расположен в другой сети, указатель должен содержать (прямо или косвенно) сетевой адрес, сетевой протокол, имя хоста, адрес порта, объектный ключ и физический адрес. Стандартнал IOR-ссылка действует как разновидность распределенного указателя на удаленный объект. Набор компонентов, содержащихся в IOR-ссылке под протоколом IIOP, показан на рис. 8.2.

Пон я тие переносимой (portable) объектной ссылки — это важный этап на пути к достижению распределенной обработки данных. Оно позволяет использовать локальные ссылки на удаленные объекты практически везде (в Internet или intranet) и имеет важные последствия для мультиагентных систем, в которых агентам приходится перемещаться между системами и по всему пространству Internet. Стандарт IOR создает основу для мобильных объектов и распределенных агентов. После того как ваша программа получит доступ к IOR-ссылке объекта, можно использовать брокер объектных запросов (Object Request Broker — ORB) для взаимодействия с удаленным объектом посредством вызова методов, механизма передачи параметров, возврата значений и т.п.

Логические компоненты IOR-ссылки:

Хост Порт Объектный ключ Другие компоненты
Идентифицирует Internet-хост Содержит ном ер порта TCP/IP, в котором целевой объект при-ним ает запросы Значение,которое однозначно преобразуется в конкретный объект Дополнительнал информ ация, которую м ожно использовать при обращениях, наприм ер для безопасности

Рис. 8.2. Набор компонентов, содержащихся в IOR-ссылке подпротоколом IIOP

Защита удалённого доступа по требованиям ФСБ

Начиная с 2016 года, ряд наших клиентов столкнулся с определёнными ограничениями на удалённое подключение к своим компьютерам. Эти ограничения были озвучены сотрудниками территориальных органов ФСБ в результате плановых проверок государственных казённых учреждений, и касаются недопустимости использования в них большинства программ для удалённого доступа.

Эти требования обоснованы. Законодательные нормы на текущий момент таковы, что допустимым считается только удалённое подключение, защищённое при помощи криптографии по стандартам ГОСТ. Поскольку в нашей стране всем, что касается контроля за шифровальными и криптографическими средствами, занимается ФСБ, то далее мы будем говорить об удалённом подключении (или канале) по требованиям ФСБ. Почему нужно именно такое подключение?

Дело в том, что почти на всех компьютерах федеральных казённых учреждений хранится конфиденциальная информация (обычно это персональные данные (далее ПДн) и/или служебная тайна), которая по закону должна быть защищена.

Мероприятия по защите конфиденциальной информации осуществляются в соответствии с «Требованиями к защите информации, не составляющей государственную тайну, содержащейся в государственных информационных системах», утвержденными приказом ФСТЭК №17 от 11.02.2013 (в ред. Приказа ФСТЭК от 15.02.2017 №27).

Мероприятия по защите конкретно ПДн осуществляются в соответствии с «Требованиями к защите ПДн при их обработке в ИСПДн», утвержденными ПП РФ от 01.11.2012 г. №1119, и «Составом и содержанием организационных и технических мер по обеспечению безопасности ПДн при их обработке в ИСПДн», утвержденными приказом ФСТЭК России от 18.02.2013 г. №21 (далее «Состав и содержание. »).

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

В официальной трактовке ФСТЭК, изложенной в ответе на наш запрос, указывается, что «… использование средств криптографической защиты информации для обеспечения безопасности ПДн необходимо в следующих случаях:

если в информационной системе существуют угрозы, которые могут быть нейтрализованы только с помощью средств криптографической защиты информации. », и далее «. К случаям, когда угрозы безопасности ПДн могут быть нейтрализованы только с помощью средств криптографической защиты информации, относятся:

Это интересно:  Технологический и ценовой аудит обоснования инвестиций

передача ПДн по каналам связи, не защищённым от перехвата нарушителем передаваемой по ним информации или от несанкционированных воздействий на эту информацию (например, при передаче ПДн по информационно-телекоммуникационным сетям общего пользования)».

Под внешними информационно-телекоммуникационными сетями подразумевается в первую очередь сеть Интернет.

Таким образом, нормативные требования относительно защиты удалённого подключения довольно однозначны, и их надо выполнять. Поскольку для технических работ по организации канала защищённого удалённого доступа по закону необходима лицензия ФСБ, то на данном этапе мы можем предложить нашим клиентам следующий вариант. Существует ряд организаций-лицензиатов ФСБ, уже предоставляющих услугу по организации такого канала, мы предлагаем воспользоваться услугами одной из них. Технически это будет выглядеть так:

1. Поскольку у такой организации уже существует вся необходимая инфраструктура, нам нужно просто присоединиться к ней. Для того, чтобы создать защищённый канал в сети организации-оператора, нужно установить на своём компьютере и на компьютере клиента специальное ПО ( так называемую клиентскую часть).

2. Мы и наши клиенты закупаем нужное количество клиентских частей и устанавливаем их на своих компьютерах. Сразу оговоримся, что устанавливать клиентскую часть должны лицензированные специалисты организации-оператора, так как это обязательное требование законодательства.

3. После установки всё готово к работе. При необходимости удалённого подключения на нашей стороне и стороне клиента запускается программа (аналогично запуску ВПН-соединения), после чего наш специалист и бухгалтер клиента могут работать, как обычно.

На текущий момент затраты на услугу по предоставлению защищённого канала следующие*:

1. Сама клиентская часть (передача права на использование ПО ViPNet Client) — 7790 руб.

2. Абонентская плата за использование канала (и техническая поддержка) — 3000 руб./год

3. Установка и настройка средств защиты информации (разово, удаленно) — 3000 руб.

4. Дистрибутив ПО и формуляры для ПО ViPNet Client (диск с подтверждающими документами, необходимый для проверяющих органов) — 950 руб.

* Внимание! Цены указаны на момент составления информационного письма и могут меняться производителем ПО или организацией, предоставляющей услугу по организации защищённого канала.

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

Технология удаленного доступа к объектам Remoting. — презентация

Презентация была опубликована 5 лет назад пользователемАртем Шулепин

Похожие презентации

Презентация на тему: » Технология удаленного доступа к объектам Remoting.» — Транскрипт:

1 Технология удаленного доступа к объектам Remoting

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

3 3. Виды распределенных архитектур Модульное программирование Клиент-серверные (двухуровневые) архитектуры Многоуровневые архитектуры Одноранговые архитектуры

4 4. Модульное программирование Один из фундаментальных приемов ограничения сложности — разделение кода на отдельные части по функциональному назначению. Такой прием можно применять на разных уровнях путем объединения кода в процедуры, процедур в классы, классов компоненты, и т.д. Распределенные приложения не только получили большие преимущества от использования данной концепции, но и помогают обеспечить ее применение, так как модульность необходима для распределения кода по разным компьютерам. Фактически основные категории распределенных архитектур различаются степенью ответственности, возлагаемой на отдельные модули, и способами их взаимодействия.

5 5. Клиент-серверные архитектуры Клиент-сервер это наиболее ранняя и фундаментальная из распределенных архитектур. В широком смысле это просто клиентский процесс, запрашивающей обслуживание у серверного процесса. Обычно клиентский процесс отвечает за уровень представления (или пользовательский интерфейс). На этом уровне выполняется проверка введенных пользователем данных, выполнение вызова сервера и применение некоторых бизнес-правил. Сервер выступает в качестве механизма исполнения клиентских запросов путем применения прикладных алгоритмов и взаимодействия с такими ресурсами, как базы данных и файловые системы. Очень часто у одного сервера бывает много клиентов. Следует отметить, что роли клиента и сервера в общем случае не обязательно исполняются разными компьютерами.

6 6. Многоуровневые архитектуры Обычно двухуровневые архитектуры легко реализуемы, но имеют проблемы масштабируемости. В трехуровневых архитектурах для решения различных задач используется промежуточный уровень. Уровень представления Бизнес-уровеньУровень данных БД Приложение Windows Forms Internet Explorer Объект Бизнес-правило Объект Бизнес-правило Объект доступа к данным Объект доступа к данным Объект доступа к данным

7 7. Одноранговые архитектуры В некоторых случаях целесообразно использовать модель более тесного взаимодействия, в которой границы между клиентом и сервером размыты. Подобная организация применяется в сценариях рабочих групп, так как основная задача подобных распределенных приложений совместное использование информации и средств обработки, Исключительно одноранговая (peer-to-peer) среда состоит из множества отдельных узлов без центрального сервера. В отсутствие общеизвестного (well-known) главного сервера необходим механизм, позволяющий узлам отыскивать друг друга. Обычно для этого используются приемы на основе широковещательных сообщений или некоторые предопределенные параметры конфигурации.

Это интересно:  Юрист по медицинским спорам

8 8. Одноранговая архитектура Узел

9 9. Преимущества распределенных приложений Отказоустойчивость (система должна сохранять работоспособность при сбоях в ней. При построении отказоустойчивой системы применяют избыточность. Распределение копий функциональных модулей по разным узлам повышает вероятность того, что сбой одного узла не повлияет на избыточные объекты, на других узлах); Масштабируемость — это способность системы выдерживать увеличивающуюся нагрузку лишь с небольшим снижением производительности (Достигается путем распределения разных функциональных частей приложения по разным узлам. ); Администрирование — управление аппаратной и программной конфигурацией большой сети ПК (Наиболее удобный вариант — перенести наиболее часто изменяющиеся программы в централизованное хранилище и обеспечить к нему удаленный доступ).

10 10. Архитектура Remoting Рассмотрим архитектуру, которая позволяет клиенту связываться с удаленным объектом. Когда клиент создает экземпляр удаленного объекта, то он получает заместителя (прокси) для доступа к объекту вместо самого объекта. Прокси предоставляет такой же интерфейс, как и реальный объект. Когда клиент вызывает метод или получает доступ к полю или свойству прокси, то за передачу запроса к удаленному объекту отвечает прокси.

11 11. Инфраструктура Remoting состоит из четырех главных компонентов: Рабочая среда Remoting – отвечает за динамическое создание прокси от имени клиента. Она также выполняет инициализацию подходящего канала связи на сервере, предназначенного для ожидания входящих запросов. Прокси — Прокси-объект отвечает за получение пользовательских вызовов метода. Как только получен такой вызов, прокси обеспечивает получение помощи от подходящего форматера и транспорт для передачи параметров удаленному объекту.

12 12. Средство форматирования (форматтер)- отвечает за сериализацию параметров в формат, подходящий для передачи. Remoting поставляется в комплекте с двумя форматтерами 0 двоичным и SOAP. Канал связи – обеспечивает пересылку сообщений между клиентом и сервером. Канал связи со стороны клиента отвечает за посылку сообщения с помощью назначенного транспортного протокола. Канал связи со стороны сервера осуществляет мониторинг входящих сообщений и передачу этих сообщений подходящему форматтеру. Remoting поставляется с двумя каналами связи – TCP и HTTP.

13 13. Инфраструктура Remoting

14 14. Этапы создания распределенного приложения Создание интерфейса (.dll); Реализация интерфейса (.dll); Создание сервера; Создание клиента.

15 15. Создание интерфейса File / New / Project / >

16 16. Программный код интерфейса (проект Interface1) using System; namespace Interface1

17 17. Создание интерфейса Откомпилировать проект; В каталоге /bin/Debug появляется файл Interface1.dll

18 18. Реализация интерфейса Интерфейс реализуется в тестируемом объекте (проект Object1); Для создание проекта используется dll: File / New/ Project / >

19 19. Подключение ссылок

20 20. Программный код тестируемого объекта (проект Object1) using System; using Interface1; namespace Object1

21 Тип, передаваемый по ссылке Иногда необходимо, чтобы все вызовы объекта, созданного в некотором домене приложения, обращались именно к экземпляру в данном домене, а не к его копии в другом домене. Например, объекту могут требоваться ресурсы, доступные только объектам, исполняющимся на данном компьютере. В этих случаях используются типы, передаваемые по ссылке, для которых инфраструктура,NET Remoting передает ссылку на экземпляр объекта, а не его сериализованную копию..NET Framework требует, чтобы типы, передаваемые по ссылке, наследовали от System.MarshatByRefObject. Простое наследование от этого класса обеспечивает возможность удаленного доступа к экземплярам производного типа Объявление типа, передаваемого по ссылке: >

22 22. Реализация интерфейса(создание тестируемого объекта) Откомпилировать проект Object1; В каталоге /bin/Debug появляется файл Object1.dll наряду с файлом Interface1.dll

23 23. Создание сервера Создать проект-приложение (WindowsApplication) MyServer; Скопировать в каталог /bin/Debug файлы Object1.dll и Interface1.dll; В окне проекта Solution Explorer добавить ссылки (add References) на Interface1.dll, Object1.dll и System.Runtime.Remoting.

24 24. Запуск программы-сервера

25 25. Программный код сервера using System; using System.Runtime.Remoting; using System.Runtime.Remoting.Channels; using System.Runtime.Remoting.Channels.Tcp; using Interface1; using Object1;

26 26. Кнопка Start System.Runtime.Remoting.Channels.Tcp.Tcp Channel channel=new TcpChannel(8080); Object1.MyObject obj=new MyObject(); System.Runtime.Remoting.RemotingServices. Marshal(obj,»object»);

27 27. Типы каналов Remoting предоставляет два типа каналов: HttpChannel ; HttpChannel ; TcpChannel TcpChannel; Хотя их общая структура похожа, они отличаются транспортом, используемым для передачи сообщений, HTTP и TCP способны обеспечить транспорт в большинстве случаев, однако иногда может возникать необходимость применения других транспортов. Например, когда требуется доступ к удаленным объектам с беспроводного устройства, использующего протокол WAP (Wireless Application Protocol).

28 28. Кнопка Stop Application.Exit();

29 29. Создание клиента Создать проект-приложение MyClient; Скопировать в каталог /bin/Debug файл Interface1.dll; В окне проекта Solution Explorer добавить ссылки (add References) на Interface1.dll (через Browse…) и System.Runtime.Remoting.

30 30. Программный код клиента … using System.Runtime.Remoting; using Interface1; … private vo >

32 32. Переопределение метода в Object // sqlCommand1 sqlCommand1.CommandText = «proc_user»; sqlCommand1.CommandType = System.Data.CommandType.StoredProcedure; sqlCommand1.Connection = sqlConnection1; sqlCommand1.Parameters.Add(new System.Data.SqlDbType.VarChar, 20)); sqlCommand1.Parameters.Add(new System.Data.SqlDbType.VarChar, 10)); sqlCommand1.Parameters.Add(new System.Data.SqlDbType.VarChar, 20, System.Data.ParameterDirection.Output, false, ((System.Byte)(0)), ((System.Byte)(0)), «», System.Data.DataRowVersion.Current, null));

Это интересно:  Увольнение пенсионеров 63 года новый закон

34 34. Переопределение метода в Object if (res!=»») return res; else return «Доступа нет»; > catch(Exception ex)

35 35. Изменения в программу-клиент

36 36. Кнопка Подключиться к объекту Interface1.MyInterface ob=(MyInterface)Activator.GetObject(typeof(MyIn terface),»tcp:// :8080/object»); try < this.label1.Text=ob.method1( this.textBox1.Text.ToString(), this.textBox2.Text.ToString()); >catch(Exception ex)

37 37. Использование двух интерфейсов Создание интерфейса Interface2 using System; namespace Interface2

38 38. Использование двух интерфейсов Добавления в Object1 using System; using Interface1; using Interface2; … public >

39 39. Использование двух интерфейсов Добавления в MyClient using System.Runtime.Remoting; using Interface1; using Interface2; … Interface1.MyInterface ob=(MyInterface)Activator.GetObject(typeof(MyIn terface),»tcp:// :8080/object»); Interface2.MyInterface2 ob2=(MyInterface2)Activator.GetObject(typeof(M yInterface2),»tcp:// :8080/object»); … this.label4.Text=ob2.method22();

40 40. Использование различных реализаций (объектов) Создание Object2 using System; using Interface2; namespace Object2

КИИ: Удаленный доступ к значимым объектам КИИ

Несколько раз столкнувшись с дискуссией по вопросу, можно предоставлять удаленный доступ к значимым объектам КИИ или нет?
Решил серьезнее проработать данный вопрос с учетом полученного комментария на встрече в ФСТЭК России ( ссылка ), что доступ по VPN с использованием сертифицированных СКЗИ не рассматривается как удаленный. Про это уже упоминал Алексей Викторович ( ссылка ).

Итак, часть пункта 31 Требований, утв. приказом ФСТЭК России от 25 декабря 2017 г. N 239, которая многих интересует:

В значимом объекте не допускаются:
— наличие удаленного доступа непос редственно (напрямую) к программным и программно-аппаратным средствам, в том числе средствам защиты информации, для обновления или управления со стороны лиц, не являющихся работниками субъекта критической информационной инфраструктуры;
— наличие локального бесконтрольного доступа к программным и программно-аппаратным средствам, в том числе средствам защиты информации, для обновления или управления со стороны лиц, не являющихся работниками субъекта критической информационной инфраструктуры;
— передача информации, в том числе технологической информации, разработчику (производителю) программных и программно-аппаратных средств, в том числе средств защиты информации, или иным лицам без контроля со стороны субъекта критической информационной инфраструктуры.

В данной заметке рассмотрю только первый пункт этого списка:
— наличие удаленного доступа непосредственно (напрямую) к программным и программно-аппаратным средствам, в том числе средствам защиты информации, для обновления или управления со стороны лиц, не являющихся работниками субъекта критической информационной инфраструктуры;

1. Ответим на вопрос: кто?
Это лица, не являющиеся работниками субъекта КИИ.
Согласно ТК РФ « работник – физическое лицо, вступившее в трудовые отношения с работодателем », а « трудовые отношения – отношения, основанные на соглашении между работником и работодателем о личном выполнении работником за плату трудовой функции (работы по должности в соответствии со штатным расписанием, профессии, специальности с указанием квалификации; конкретного вида поручаемой работнику работы) в интересах, под управлением и контролем работодателя .. .», плюс, заключение гражданско-правовых договоров, фактически регулирующих трудовые отношения между работником и работодателем, не допускается.
Таким образом, все представители аутсорсинговых, аутстаффинговых, консалтинговых компаний, вендоров и т.п., действующие не в рамках трудового договора с субъектом КИИ, – это лица, не являющиеся работниками субъекта КИИ.

2. Ответим на вопрос: зачем?
Для обновления или управления программными и программно-аппаратными средствами значимого объекта КИИ или его средствами защиты информации.
Таким образом, сюда не попадет анализ неисправностей ( диагностика ), а устранение неисправностей сюда не попадает только если в рамках данной процедуры не используются функции управления ( т.е. перезагрузка средства, импорт нового конфигурационного файла и т.п .) или обновления ( т.е. установка патча, новой версии и т.п .), мониторинг, скорее всего, сюда то же не попадет ( сомнение связано с тем, что я встречал случаи, когда мониторинг рассматривался как неотъемлемая часть управления ).

Таким образом, если ноутбук аутстаффингового специалиста, обслуживающего компонент, на локации субъекта КИИ всегда соединен с компонентом ( с выделенного ему рабочего места ), то взяв его с собой за пределы основной локации и подключившись по VPN-сети с использованием сертифицированных СКЗИ, это подключение не будет считаться удаленным доступом.

Так же не будет считаться удаленным доступом постоянное соединение ( не по требованию/заявке ) аутсорсингового специалиста, обслуживающего компонент, с локации аутсорсера, подключившись по VPN-сети с использованием сертифицированных СКЗИ.

Получается следующая блок-схема принятия решения о том, можно ли удаленно подключаться к значимому объекту КИИ или нельзя:

Статья написана по материалам сайтов: www.bs21.ru, www.myshared.ru, www.securitylab.ru.

»

Помогла статья? Оцените её
1 Star2 Stars3 Stars4 Stars5 Stars
Загрузка...
Добавить комментарий

Adblock
detector