---
title: "\"ГОСТ Р ИСО/МЭК 20933-2017. Национальный стандарт Российской Федерации. Информационные технологии. Распределенные платформы приложений и сервисов (DAPS). Системы доступа\""
number: "ГОСТ Р ИСО/МЭК 20933-2017"
issuer: "Федеральное агентство по техническому регулированию и метрологии"
status: действует
canonical: "https://bukva.ai/docs/standart-gost-r-isomek-20933-2017"
---

## "ГОСТ Р ИСО/МЭК 20933-2017. Национальный стандарт Российской Федерации. Информационные технологии. Распределенные платформы приложений и сервисов (DAPS). Системы доступа"

# "ГОСТ Р ИСО/МЭК 20933-2017. Национальный стандарт Российской Федерации. Информационные технологии. Распределенные платформы приложений и сервисов (DAPS). Системы доступа"

(утв. и введен в действие Приказом Росстандарта от 05.09.2017 N 1013-ст)

> [!IMPORTANT]
> Документ [введен](#p100010) в действие с 01.09.2018.


<div align="right">

<a id="p100001"></a>Утвержден и введен в действие<br>
Приказом Федерального<br>
агентства по техническому<br>
регулированию и метрологии<br>
от 5 сентября 2017 г. N 1013-ст

</div>


<div align="center">

<a id="p100002"></a>**НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ**

<a id="p100003"></a>**ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ**

<a id="p100004"></a>**РАСПРЕДЕЛЕННЫЕ ПЛАТФОРМЫ ПРИЛОЖЕНИЙ И СЕРВИСОВ (DAPS)**

<a id="p100005"></a>**СИСТЕМЫ ДОСТУПА**

<a id="p100006"></a>**Information technology.**<br>
**Distributed application platforms and services (DAPS).**<br>
**Access systems**

<a id="p100007"></a>**(ISO/IEC 20933:2016, IDT)**

<a id="p100008"></a>**ГОСТ Р ИСО/МЭК 20933-2017**

</div>


<div align="right">

<a id="p100009"></a>ОКС 35.100.05

<a id="p100010"></a>Дата введения

</div>

1 сентября 2018 года


### <a id="p100011"></a>Предисловие


<a id="p100012"></a>1 ПОДГОТОВЛЕН Обществом с ограниченной ответственностью "Информационно-аналитический вычислительный центр" (ООО ИАВЦ) на основе собственного перевода на русский язык англоязычной версии международного стандарта, указанного в [пункте 4](#p100015)
<a id="p100013"></a>2 ВНЕСЕН Техническим комитетом по стандартизации ТК 22 "Информационные технологии"
<a id="p100014"></a>3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 5 сентября 2017 г. N 1013-ст
<a id="p100015"></a>4 Настоящий стандарт идентичен международному стандарту ИСО/МЭК 20933:2016 "Информационные технологии. Распределенные платформы приложений и сервисов (DAPS). Системы доступа" (ISO/IEC 20933:2016 "Information technology - Distributed Application Platforms and Services (DAPS) - Access Systems", IDT)
<a id="p100016"></a>5 ВВЕДЕН ВПЕРВЫЕ
<a id="p100017"></a>6 Некоторые положения международного стандарта, указанного в [пункте 4](#p100015), могут являться объектом патентных прав. Международная организация по стандартизации (ИСО) и Международная электротехническая комиссия (МЭК) не несут ответственности за идентификацию подобных патентных прав

<a id="p100018"></a>Правила применения настоящего стандарта установлены в статье 26 Федерального закона от 29 июня 2015 г. N 162-ФЗ "О стандартизации в Российской Федерации". Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе "Национальные стандарты", а официальный текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)


### <a id="p100019"></a>Введение


<a id="p100020"></a>ИСО/МЭК 20933 подготовлен организацией Ecma International (ECMA-412), принят в соответствии со специальной "ускоренной процедурой" Совместным техническим комитетом СТК 1 "Информационные технологии" Международной организации по стандартизации (ИСО) и Международной электротехнической комиссии (МЭК) и утвержден национальными органами ИСО и МЭК.
<a id="p100021"></a>Технологии контроля доступа в режиме реального времени широко применяются в различных системах - от входных турникетов до управления доступом к услугам. Системы контроля доступа в режиме реального времени, связанные друг с другом с использованием сетей и использующие информацию баз данных, также применяются для расчетного обслуживания и управления членством.
<a id="p100022"></a>Передовые облачные и сетевые технологии и услуги, системы виртуализации и базы данных, а также развивающиеся технологии проверки подлинности, в том числе биометрическая идентификация, NFC, QR-коды, используемые в распределенных и модульных системах контроля доступа, открывают перед операторами возможности создания инновационных систем обслуживания пользователей.
<a id="p100023"></a>Настоящий стандарт учитывает широкое разнообразие существующих технологий и описывает эталонную модель и общие функции управления. Настоящий стандарт определяет текущее направление разработки инновационных технологий и системной интеграции распределенных систем контроля доступа в режиме реального времени.


### <a id="p100024"></a>1 Область применения


<a id="p100025"></a>Настоящий стандарт устанавливает:
1) <a id="p100026"></a>модульную систему доступа по идентификаторам, функции модулей, сообщения, которыми модули обмениваются друг с другом, а также последовательность этих сообщений, т.е. этапы транзакции;
2) <a id="p100027"></a>функции, выполняемые системой с момента приема запроса доступа до отправки ответа на него, т.е. полную обработку транзакции;
3) <a id="p100028"></a>функции модулей, в том числе присвоение меток времени и реагирование на поступающие запросы;
<a id="p100029"></a>**4) последовательность и семантику сообщений и их элементов.**


### <a id="p100030"></a>2 Соответствие требованиям


<a id="p100031"></a>**При обработке транзакций совместимые системы доступа анализируют действующие правила. Модули, соответствующие требованиям настоящего стандарта, обрабатывают запросы, поступающие через их интерфейсы, отправляют ответы и назначают метки времени в соответствии с требованиями настоящего стандарта.**


### <a id="p100032"></a>3 Нормативные ссылки


<a id="p100033"></a>**В настоящем стандарте нормативные ссылки отсутствуют.**


### <a id="p100034"></a>4 Термины, определения и аббревиатуры


<a id="p100035"></a>В настоящем стандарте применены следующие термины с соответствующими определениями и аббревиатуры:
<a id="p100036"></a>4.1 идентификатор (identifier, ID).
<a id="p100037"></a>4.2 АДП (Rule Evaluation and Dispatching, RED): Анализ и диспетчеризация правил.
<a id="p100038"></a>**4.3 транзакция (transaction): Запрос доступа.**


### <a id="p100039"></a>5 Модель


<div align="center">

<a id="p100040"></a>Структура системы доступа приведена на рисунке 1.

</div>


<a id="p100041"></a> ![5 Модель](https://i.bukva.ai/NeLlUTS9/img_0.png) 

<div align="center">

<a id="p100042"></a>Рисунок 1 - Система доступа

</div>


<a id="p100043"></a>Система доступа включает в себя пять модулей (точка доступа, политика, обработка, АДП и хранение) и четыре интерфейса (интерфейс доступа, интерфейс политики, интерфейс обработки и интерфейс хранения).
<a id="p100044"></a>В процессе обработки транзакции модули обмениваются сообщениями, а система доступа определяет конечный результат (предоставить доступ либо отказать в нем). Транзакция начинается в тот момент, когда модуль точки доступа получает запрос Access_request, а завершается, когда модуль АДП отправляет уведомление об окончательном результате Final_Result_Notification. Все модули назначают метки времени. Управление функциями обмена сообщениями и назначения меток времени осуществляется модулем АДП в соответствии с правилами, которые задает модуль политики.


### <a id="p100045"></a>6 Транзакция


<a id="p100046"></a>Транзакция имеет идентификатор, который включает в себя идентификатор доступа, идентификатор точки доступа и время получения запроса доступа Access_request. Идентификатор доступа Access ID входит в состав запроса Access_request.

<div align="center">

<a id="p100047"></a>Конечный автомат транзакции приведен на рисунке 2.

</div>


<a id="p100048"></a> ![6 Транзакция](https://i.bukva.ai/NeLlUTS9/img_1.png) 

<div align="center">

<a id="p100049"></a>Рисунок 2 - Конечный автомат транзакции

</div>


<a id="p100050"></a>Транзакция создается в момент, когда модуль точки доступа принимает запрос доступа Access_request. Затем транзакция переходит в состояние обработки, когда модуль точки доступа отправляет модулю АДП запрос на запуск транзакции Transaction_start_request с идентификатором транзакции.
<a id="p100051"></a>В состоянии обработки модуль АДП анализирует правила до тех пор, пока не будет получен окончательный результат. Модуль АДП отправляет модулю обработки или модулю хранения сообщение с запросом, соответствующее результату анализа, и получает ответ на него.
<a id="p100052"></a>После получения окончательного ответа модуль АДП отправляет уведомление об окончательном ответе Final_Result_Notification, и транзакция завершается.


### <a id="p100053"></a>7 Функция назначения меток времени


<a id="p100054"></a>Функция назначения меток времени предназначена для измерения длительности транзакции и обработки запроса.
<a id="p100055"></a>Модуль точки доступа отмечает время получения идентификатора доступа Access_ID_obtained_time в запросе запуска транзакции Transaction_start_request. Назначение меток времени другими модулями активируется и деактивируется в соответствии с правилами назначения меток времени. По окончании анализа правил назначения меток времени модуль АДП устанавливает значение TRUE или FALSE флага метки времени TimeStampingFlag в запросах в соответствии с результатами анализа. В зависимости от значения флага TimeStampingFlag модули записывают время получения и отправки в элементы ReceivedTime и SendingTime соответственно либо исключают их из ответа.
<a id="p100056"></a>Модуль АДП отправляет измерения, выполненные с использованием меток времени, в ответе на запрос метки времени Time_stamp_Notification.
<a id="p100057"></a>Модуль АДП измеряет следующие временные характеристики:
1) <a id="p100058"></a>длительность обработки транзакции;
2) <a id="p100059"></a>длительность обработки запроса.
<a id="p100060"></a>При активации функции назначения меток времени модуль АДП измеряет следующую характеристику:
3) <a id="p100061"></a>длительность работы модуля.
<a id="p100062"></a>Модуль АДП измеряет длительность обработки транзакции, вычисляя разность между временем получения запроса запуска транзакции Transaction_start_request и временем отправки ответа с окончательным результатом Final_Result_Notification.
<a id="p100063"></a>Модуль АДП измеряет длительность обработки запроса, фиксируя время отправки запроса и время получения ответа, а затем вычисляя разность между ними.
<a id="p100064"></a>Если функция назначения меток времени активирована, то элементы Processing_response, Store_ response и Retrieve_response содержат в себе информацию о времени получения соответствующего запроса и отправки ответа. С использованием этих элементов модуль АДП может измерять время обработки модулем. Например, длительность обработки запроса, полученного модулем обработки от модуля АДП, равна разности между временем получения RecievedTime и временем отправки SendingTime соответствующего сообщения Processing_response.
<a id="p100065"></a>Назначение меток времени приведено в [приложении C](#p100164).


### <a id="p100066"></a>8 Модуль



#### <a id="p100067"></a>8.1 Общие требования


<a id="p100068"></a>Модули выполняют функцию назначения меток времени.


#### <a id="p100069"></a>8.2 Модуль политики


<a id="p100070"></a>Модуль политики является источником правил, которые применяются модулем АДП. Каждое правило имеет собственный идентификатор; правила определяют ход выполнения транзакции, требование настоящего стандарта, которому должна соответствовать система доступа, а также одного или нескольких получателей уведомлений Final_Result_Notification и Time_stamp_Notification.


#### <a id="p100071"></a>8.3 Модуль точки доступа


<a id="p100072"></a>Когда модуль точки доступа получает запрос доступа Access_request, он генерирует запрос запуска транзакции Transaction_start_request и отправляет его модулю АДП.
<a id="p100073"></a>Модуль точки доступа имеет свой собственный идентификатор.


#### <a id="p100074"></a>8.4 Модуль АДП


<a id="p100075"></a>Модуль АДП должен принимать правила от модуля политики и хранить их.
<a id="p100076"></a>Правила состоят из процедурных правил и правил с ветвлением, что приведено на [рисунках 3](#p100078) и [4](#p100080) соответственно. Процедурное правило определяет следующее действие, которое необходимо выполнить, а правило с ветвлением выбирает следующее правило в зависимости от условия ветвления. С идентификатором доступа Access ID связано минимум одно правило.

<a id="p100077"></a> ![8.4 Модуль АДП](https://i.bukva.ai/NeLlUTS9/img_2.png) 

<div align="center">

<a id="p100078"></a>Рисунок 3 - Процедурное правило

</div>




<a id="p100079"></a> ![8.4 Модуль АДП](https://i.bukva.ai/NeLlUTS9/img_3.png) 

<div align="center">

<a id="p100080"></a>Рисунок 4 - Правило с ветвлением

</div>


<a id="p100081"></a>При обработке транзакции модуль АДП управляется сообщениями. При получении сообщения он анализирует правила и направляет запрос и ответ от одного модуля другому в соответствии с правилами. Если результатом транзакции является разрешение доступа или отказ в нем, то модуль АДП отправляет уведомление о конечном результате Final_Result_Notification одному или нескольким адресатам, указанным в правилах.
<a id="p100082"></a>В соответствии с правилами модуль АДП создает запрос на обработку Processing_request и отправляет его модулю обработки. Модуль АДП получает ответ Processing_response с результатом обработки запроса Processing_request.
<a id="p100083"></a>Если модуль АДП получает от модуля обработки запрос сохранения Store_request, то он передает его модулю хранения. Если модуль АДП получает от модуля обработки запрос извлечения Retrieve_request, то он передает его модулю хранения. Если модуль АДП получает от модуля хранения ответ на запрос сохранения Store_response, то он передает его модулю обработки. Если модуль АДП получает от модуля хранения ответ на запрос извлечения Retrieve_response, то он передает его модулю обработки.
<a id="p100084"></a>Если функция назначения меток времени активна, то для управления информацией меток времени модуль АДП регистрирует время отправки и получения сообщений. Модуль АДП отправляет уведомление с меткой времени Time_stamp_Notification одному или нескольким получателям, указанным в правилах.


#### <a id="p100085"></a>8.5 Модуль обработки


<a id="p100086"></a>Модуль обработки имеет минимум одну функцию. Каждая функция имеет свой собственный идентификатор.
<a id="p100087"></a>Когда модуль обработки получает запрос обработки Processing_request от модуля АДП, он выполняет функцию с идентификатором, указанным в запросе, формирует ответ Processing_response с результатом выполнения и отправляет его модулю АДП.
<a id="p100088"></a>Модуль обработки может отправлять модулю АДП запросы сохранения и извлечения данных.


#### <a id="p100089"></a>8.6 Модуль хранения


<a id="p100090"></a>Когда модуль хранения получает запрос на сохранение Store_request, он сохраняет данные, формирует ответ Store_response и отправляет его модулю АДП. Когда модуль хранения получает запрос на извлечение Retrieve_request, он извлекает данные, формирует ответ Retrieve_response и отправляет его модулю АДП. Тип данных определяется переменной Data_type.
<a id="p100091"></a>С использованием модуля хранения можно обеспечивать совместное использование информации различными транзакциями в рамках одной или нескольких систем доступа, как указано в [приложении B](#p100156). Пример, в котором не используется модуль хранения, приведен в [приложении A](#p100145).


### <a id="p100092"></a>9 Определение сообщения и интерфейс



#### <a id="p100093"></a>9.1 Общая информация


<a id="p100094"></a>В настоящем разделе приведены сообщения, которые передаются через различные интерфейсы. Каждое сообщение может включать в себя элементы, перечисленные в настоящем разделе, а также другие элементы. В настоящем стандарте для описания сообщений используют язык ASN.1. Правила кодирования не описаны.
<a id="p100095"></a>Запросы и ответы включают в себя идентификатор транзакции. Тип идентификатора транзакции описывается следующим образом:
<a id="p100096"></a>TransactionID_TYPE::= SEQUENCE{
   Access_ID                OCTET_STRING,
   Access-point_ID          OCTET_STRING,
   Access_ID_obtained_time  GeneralizedTime
}


#### <a id="p100097"></a>9.2 Интерфейс политики


<a id="p100098"></a>Модуль политики должен использовать сообщение Policy_setter для задания правила модулю АДП. Сообщение Policy_setter можно использовать в произвольный момент времени. Модуль АДП может использовать сообщение Policy_getter для запроса правила. Сообщение Policy_getter можно использовать в произвольный момент времени. Сообщение Policy_getter зависит от реализации.
<a id="p100099"></a>Policy_setter::= SEQUENCE{
   RULE_ID               OCTET STRING,
   RULE                  OCTET STRING
}
Policy_getter::= SET{
   RULE_ID               OCTET STRING
}


#### <a id="p100100"></a>9.3 Запрос доступа


<a id="p100101"></a>Модуль точки доступа получает от лица, запрашивающего разрешение доступа, следующее сообщение:
<a id="p100102"></a>Access_request::= SET{
    Access_ID  OCTET STRING
}


#### <a id="p100103"></a>9.4 Интерфейс доступа


<a id="p100104"></a>Модуль доступа должен использовать следующий запрос создания новой транзакции:
<a id="p100105"></a>Transaction_start_request::= SET{
     Transaction_ID         TransactionID_TYPE
}


#### <a id="p100106"></a>9.5 Интерфейс обработки


<a id="p100107"></a>Для выполнения функции в соответствии с правилом модуль АДП должен использовать следующий запрос:
<a id="p100108"></a>Processing_request::= SEQUENCE{
   Transaction_ID        TransactionID_TYPE
   Function_ID           OCTET STRING,
   TimeStampingFlag      BOOLEAN,
   SetOfParameter        SET{
                         Parameter OCTET STRING
                         }
}
<a id="p100109"></a>Флаг TimeStampingFlag показывает, активна ли функция назначения меток времени.
<a id="p100110"></a>Модуль обработки должен использовать следующий ответ:
<a id="p100111"></a>Processing_response::= SEQUENCE{
   Transaction_ID        TransactionID_TYPE,
   Function_ID           OCTET STRING,
   ReceivedTime          GeneralizedTime,
   SendingTime           GeneralizedTime,
   Result                OCTET STRING
}
<a id="p100112"></a>Идентификатор функции Function_ID должен совпадать с идентификатором функции Function_ID в соответствующем запросе Processing_request.
<a id="p100113"></a>Ответ Processing_response должен включать в себя элемент ReceivedTime, если флаг TimeStampingFlag в соответствующем запросе обработки Processing_request имеет значение TRUE. Элемент ReceivedTime должен показывать время получения модулем обработки соответствующего запроса Processing_request от модуля АДП.
<a id="p100114"></a>Ответ Processing_response должен включать в себя элемент SendingTime, если флаг TimeStampingFlag в соответствующем запросе обработки Processing_request имеет значение TRUE. Элемент SendingTime должен показывать время отправки этого ответа.
<a id="p100115"></a>Элемент Result должен содержать результат выполнения функции.
<a id="p100116"></a>Модуль обработки может использовать следующие запросы сохранения и извлечения данных:
<a id="p100117"></a>Store_request::= SEQUENCE{
   Transaction_ID       TransactionID_TYPE,
   Function_ID          OCTET STRING,
   TimeStampingFlag     BOOLEAN,
   Data_type            OCTET STRING,
   Data                 OCTET STRING
}
<a id="p100118"></a>Флаг TimeStampingFlag должен совпадать с флагом TimeStampingFlag запроса Processing_request с таким же идентификатором транзакции Transaction_ID.
<a id="p100119"></a>Retrieve_request::= SEQUENCE{
   Transaction_ID        TransactionID_TYPE,
   Function_ID           OCTET STRING,
   TimeStampingFlag      BOOLEAN,
   Data_type             OCTET STRING
}
<a id="p100120"></a>Флаг TimeStampingFlag должен совпадать с флагом TimeStampingFlag запроса Processing_request с таким же идентификатором транзакции Transaction_ID.
<a id="p100121"></a>Модуль АДП должен использовать следующие ответы:
<a id="p100122"></a>Store_response::= SEQUENCE{
   Transaction_ID       TransactionID_TYPE,
   Function_ID          OCTET STRING,
   ReceivedTime         GeneralizedTime,
   SendingTime          GeneralizedTime,
   Result               OCTET STRING
}
<a id="p100123"></a>Идентификатор функции Function_ID должен совпадать с идентификатором функции Function_ID в соответствующем запросе Store_request.
<a id="p100124"></a>Ответ Store_response должен включать в себя элемент ReceivedTime, если флаг TimeStampingFlag в соответствующем запросе сохранения Store_request имеет значение TRUE. Элемент ReceivedTime должен показывать время получения модулем хранения соответствующего запроса сохранения Store_ request от модуля АДП.
<a id="p100125"></a>Ответ Store_response должен включать в себя элемент SendingTime, если флаг TimeStampingFlag в соответствующем запросе сохранения Store_request имеет значение TRUE. Элемент SendingTime должен показывать время отправки этого ответа.
<a id="p100126"></a>Элемент Result должен показывать, сохранены ли данные, указанные в элементе Data запроса сохранения Store_request.
<a id="p100127"></a>Retrieve_response::= SEQUENCE{
   Transaction_ID        TransactionID_TYPE,
   Function_ID           OCTET STRING,
   ReceivedTime          GeneralizedTime,
   SendingTime           GeneralizedTime,
   Data                  OCTET STRING
}
<a id="p100128"></a>Идентификатор функции Function_ID должен совпадать с идентификатором функции Function_ID в соответствующем запросе Retrieve_request.
<a id="p100129"></a>Ответ Retrieve_response должен включать в себя элемент ReceivedTime, если флаг TimeStampingFlag в соответствующем запросе извлечения Retrieve_request имеет значение TRUE. Элемент ReceivedTime должен показывать время получения модулем хранения соответствующего запроса извлечения от модуля АДП.
<a id="p100130"></a>Ответ Retrieve_response должен включать в себя элемент SendingTime, если флаг TimeStampingFlag в соответствующем запросе извлечения Retrieve_request имеет значение TRUE. Элемент SendingTime должен показывать время отправки этого ответа.
<a id="p100131"></a>Элемент Data должен включать в себя данные, извлеченные при обработке соответствующего запроса Retrieve_request.


#### <a id="p100132"></a>9.6 Интерфейс хранения


<a id="p100133"></a>Модуль АДП может использовать следующие запросы сохранения и извлечения данных:
<a id="p100134"></a>Store_request::= SEQUENCE{
   Transaction_ID       TransactionID_TYPE,
   Function_ID          OCTET STRING,
   TimeStampingFlag     BOOLEAN,
   Data_type            OCTET STRING,
   Data                 OCTET STRING
}
Retrieve_request::= SEQUENCE{
Transaction_ID           TransactionID_TYPE,
Function_ID              OCTET STRING,
TimeStampingFlag         BOOLEAN,
Data_type                OCTET STRING
}
<a id="p100135"></a>Модуль хранения должен использовать следующие ответы:
<a id="p100136"></a>Store_response::= SEQUENCE{
   Transaction_ID       TransactionID_TYPE,
   Function_ID          OCTET STRING,
   ReceivedTime         GeneralizedTime,
   SendingTime          GeneralizedTime,
   Result               OCTET STRING
}
Retrieve_response::= SEQUENCE{
   Transaction_ID       TransactionID_TYPE,
   Function_ID          OCTET STRING,
   ReceivedTime         GeneralizedTime,
   SendingTime          GeneralizedTime,
   Data                 OCTET STRING
}
<a id="p100137"></a>Все элементы совпадают с элементами интерфейса обработки, приведенного в [9.5](#p100106).


#### <a id="p100138"></a>9.7 Уведомление о конечном результате


<a id="p100139"></a>Модуль АДП должен использовать следующий формат уведомления о конечном результате Final_Result_Notification (предоставление доступа или отказ в нем):
<a id="p100140"></a>Final_Result_Notification::= SEQUENCE{
   Transaction_ID            TransactionID_TYPE,
   ResultOfTransaction       ENUMERATED{ GRANT, DENY },
}


#### <a id="p100141"></a>9.8 Уведомление с меткой времени


<a id="p100142"></a>Модуль АДП должен использовать уведомление Time_stamp_Notification для передачи метки времени. Момент отправки этого сообщения определяется правилами:
<a id="p100143"></a>Time_stamp_Notification::= SETOF{
   Transaction_ID             TransactionID_TYPE,
   TimeStampInformation       CHOICE{
                              Transaction  processing time  Generalized time,
                              Request processing times      SET OF GeneralizedTime,
                              Module processing times       SET OF GeneralizedTime
                              }
}





<div align="right">

<a id="p100144"></a>Приложение A

</div>

(справочное)

<div align="center">

<a id="p100145"></a>**СИСТЕМА КОНТРОЛЯ ДОСТУПА К УСЛУГАМ**

</div>


<a id="p100146"></a>Система контроля доступа к услугам предоставляет пользователям доступ к устройствам после прохождения аутентификации.
<a id="p100147"></a>Процедура аутентификации выполняется системой доступа.
<a id="p100148"></a>Типичный пример последовательности сообщений при аутентификации приведен ниже.

<a id="p100149"></a> ![9.8 Уведомление с меткой времени](https://i.bukva.ai/NeLlUTS9/img_4.png) 

<a id="p100150"></a>Для задания правил модуль политики отправляет сообщение Policy_setter модулю АДП.
<a id="p100151"></a>Если модуль точки доступа получает идентификатор доступа, то он отправляет модулю АДП запрос запуска транзакции Transaction_start_request.
<a id="p100152"></a>Модуль АДП анализирует правила и отправляет запрос обработки Processing_request модулю обработки для выполнения функции проверки.
<a id="p100153"></a>Модуль обработки выполняет функцию проверки и отправляет модулю АДП ответ Processing_response с результатом проверки (OK [разрешение доступа] или NG [отказ в доступе]).
<a id="p100154"></a>Модуль АДП отправляет адресату уведомление Final_Result_Notification с конечным результатом (разрешение/отказ).





<a id="p100155"></a>Приложение B

<div align="center">

**(справочное)**

<a id="p100156"></a>ОБМЕН ИНФОРМАЦИЕЙ МЕЖДУ РАЗЛИЧНЫМИ СИСТЕМАМИ ДОСТУПА

</div>


<a id="p100157"></a> ![9.8 Уведомление с меткой времени](https://i.bukva.ai/NeLlUTS9/img_5.png) 

<a id="p100158"></a>Шаг <1>. Пользователь получает доступ к объекту X по своему идентификатору. Журнал использования находится в модуле хранения, который совместно используется системами доступа объектов X и Y.
<a id="p100159"></a>Шаг <2>. Затем пользователь получает доступ к объекту Y по тому же идентификатору, что и к объекту X. Чтобы объекты X и Y могли совместно обслуживать пользователя (предоставлять ему скидки, индивидуальные предложения и др.), объект Y получает доступ к журналу использования, находящемуся в общем модуле хранения.
<a id="p100160"></a>Для этой цели несколько систем доступа совместно используют модуль хранения.
<a id="p100161"></a>Пример, в котором модуль хранения совместно используется двумя системами доступа, приведен ниже.

<a id="p100162"></a> ![9.8 Уведомление с меткой времени](https://i.bukva.ai/NeLlUTS9/img_6.png) 





<a id="p100163"></a>Приложение C

<div align="center">

(справочное)

</div>


<div align="right">

<a id="p100164"></a>ИСПОЛЬЗОВАНИЕ МЕТОК ВРЕМЕНИ

</div>


<a id="p100165"></a>При реализации типичной схемы обмена сообщениями, описанной в [приложении A](#p100145), модуль АДП регистрирует метки времени в следующие моменты.

<a id="p100166"></a> ![9.8 Уведомление с меткой времени](https://i.bukva.ai/NeLlUTS9/img_7.png) 



<table>
<colgroup><col width="12%"><col width="88%"></colgroup>
<tr><td colspan="2"><a id="p100167"></a>Регистрация метки времени</td></tr>
<tr><td><a id="p100168"></a><img src="https://i.bukva.ai/NeLlUTS9/img_8.png" alt="9.8 Уведомление с меткой времени"></td><td><a id="p100169"></a>Модуль АДП регистрирует время отправки запросов и получения ответов.</td></tr>
<tr><td><a id="p100170"></a><img src="https://i.bukva.ai/NeLlUTS9/img_9.png" alt="9.8 Уведомление с меткой времени"></td><td><a id="p100171"></a>Модуль хранения или обработки регистрирует время отправки запроса или получения ответа и отправляет его модулю АДП в ответном сообщении.</td></tr>
</table>


<div align="center">

<a id="p100172"></a>Точки на схеме соответствуют следующим моментам времени:

</div>


1. <a id="p100173"></a>Модуль АДП получает запрос запуска транзакции Transaction_start_request.
2. <a id="p100174"></a>Модуль АДП отправляет запрос обработки Processing_request.
3. <a id="p100175"></a>Модуль обработки получает запрос обработки Processing_request.
4. <a id="p100176"></a>Модуль АДП получает запрос извлечения Retrieve_request.
5. <a id="p100177"></a>Модуль АДП отправляет запрос извлечения Retrieve_request.
6. <a id="p100178"></a>Модуль хранения получает запрос извлечения Retrieve_request.
7. <a id="p100179"></a>Модуль хранения отправляет ответ на запрос извлечения Retrieve_response.
8. <a id="p100180"></a>Модуль АДП получает ответ на запрос извлечения Retrieve_response.
9. <a id="p100181"></a>Модуль АДП отправляет ответ на запрос извлечения Retrieve_response.
10. <a id="p100182"></a>Модуль АДП получает запрос сохранения Store_request.
11. <a id="p100183"></a>Модуль АДП отправляет запрос сохранения Store_request.
12. <a id="p100184"></a>Модуль хранения получает запрос сохранения Store_request.
13. <a id="p100185"></a>Модуль хранения отправляет ответ на запрос сохранения Store_response.
14. <a id="p100186"></a>Модуль АДП получает ответ на запрос сохранения Store_response.
15. <a id="p100187"></a>Модуль АДП отправляет ответ на запрос сохранения Store_response.
16. <a id="p100188"></a>Модуль обработки отправляет ответ на запрос обработки Processing_response.
17. <a id="p100189"></a>Модуль АДП получает ответ на запрос обработки Processing_response.
18. <a id="p100190"></a>Модуль АДП отправляет уведомление о конечном результате Final_Result_Notification.
   <a id="p100191"></a>Модуль АДП вычисляет следующие периоды времени:
   <a id="p100192"></a>(1) Длительность обработки транзакции (Т1) = [[18]](#p100190) - [[1]](#p100173)
   <a id="p100193"></a>(2) Длительность обработки запроса модулем обработки (Т2) = [[17]](#p100189) - [[2]](#p100174)
   <a id="p100194"></a>(3) Длительность работы с запросом в модуле обработки (Т3) = [[16]](#p100188) - [[3]](#p100175)
   <a id="p100195"></a>(4) Задержка передачи через интерфейс обработки (Т4) = Т2 - Т3

<a id="p100196"></a>Поскольку задержка передачи запроса и результата равна Т2 - Т3, задержки передачи запроса от модуля АДП модулю обработки и передачи результата от модуля обработки модулю АДП приблизительно равны (Т2 - Т3)/2.
<a id="p100197"></a>(5) Длительность обработки запроса извлечения модулем хранения (Т5) = [[8]](#p100180) - [[5]](#p100177)
<a id="p100198"></a>(6) Длительность работы модуля хранения по обработке запроса извлечения (Т6) = [[7]](#p100179) - [[6]](#p100178)
<a id="p100199"></a>(7) Задержка передачи запроса и результата извлечения через интерфейс хранения (Т7) = Т5 - Т6
<a id="p100200"></a>Поскольку задержка передачи запроса и результата равна Т5 - Т6, задержки передачи запроса от модуля АДП модулю хранения и результата от модуля хранения модулю АДП приблизительно равны (Т5 - Т6)/2.
<a id="p100201"></a>(8) Длительность обработки запроса сохранения модулем хранения (Т8) = [[14]](#p100186) - [[11]](#p100183)
<a id="p100202"></a>(9) Длительность работы модуля хранения для обработки запроса сохранения (Т9) = [[13]](#p100185) - [[12]](#p100184)
<a id="p100203"></a>(10) Задержка передачи запроса и ответа сохранения через интерфейс хранения (Т10) = Т8 - Т9
<a id="p100204"></a>Поскольку задержка передачи запроса и результата равна Т8 - Т9, задержки передачи запроса от модуля АДП модулю хранения и результата от модуля хранения модулю АДП приблизительно равны (Т8 - Т9)/2.
<a id="p100205"></a>(11) Время работы модуля обработки за вычетом длительности обработки запросов, направленных модулем обработки модулю АДП (Т11) = Т3 - ([[9]](#p100181) - [[4]](#p100176) + Т4) - ([[15]](#p100187) - [[10]](#p100182) + Т4)






<table>
<colgroup><col width="47%"><col width="53%"></colgroup>
<tr><td><a id="p100206"></a>УДК 004:006.354</td><td><a id="p100207"></a>ОКС 35.100.05</td></tr>
<tr><td colspan="2"><a id="p100208"></a>Ключевые слова: информационные технологии, распределенные платформы приложений и сервисов, системы доступа, анализ и диспетчеризация правил (АДП), транзакция, обмен сообщениями</td></tr>
</table>




<a id="p100209"></a>

---
