Утверждены

приказом Министерства

цифрового развития, связи

и массовых коммуникаций

Российской Федерации

от 28.08.2023 г. N 750

ИЗМЕНЕНИЯ

В ТРЕБОВАНИЯ К ОБОРУДОВАНИЮ И ПРОГРАММНО-ТЕХНИЧЕСКИМ

СРЕДСТВАМ, ИСПОЛЬЗУЕМЫМ ОРГАНИЗАТОРОМ РАСПРОСТРАНЕНИЯ

ИНФОРМАЦИИ В СЕТИ "ИНТЕРНЕТ" В ЭКСПЛУАТИРУЕМЫХ ИМ

ИНФОРМАЦИОННЫХ СИСТЕМАХ, ДЛЯ ПРОВЕДЕНИЯ УПОЛНОМОЧЕННЫМИ

ГОСУДАРСТВЕННЫМИ ОРГАНАМИ, ОСУЩЕСТВЛЯЮЩИМИ

ОПЕРАТИВНО-РОЗЫСКНУЮ ДЕЯТЕЛЬНОСТЬ ИЛИ ОБЕСПЕЧЕНИЕ

БЕЗОПАСНОСТИ РОССИЙСКОЙ ФЕДЕРАЦИИ, МЕРОПРИЯТИЙ В ЦЕЛЯХ

РЕАЛИЗАЦИИ ВОЗЛОЖЕННЫХ НА НИХ ЗАДАЧ, УТВЕРЖДЕННЫЕ ПРИКАЗОМ

МИНИСТЕРСТВА ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ

КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

ОТ 29.10.2018 N 571

1. Пункт 4 изложить в следующей редакции:

"4. Поиск, обработка и передача на пункт управления уполномоченного подразделения органа федеральной службы безопасности (далее - ПУ) следующих данных, хранимых в ИС ОРИ и (или) ПТС ОРИ при реализации ПТС ОРИ в соответствии с пунктом 2 настоящих требований, осуществляются с использованием ПТС ОРИ по запросу уполномоченного подразделения органа федеральной службы безопасности или в автоматическом режиме:

1) информации о зарегистрированных пользователях в соответствии с пунктами 13 и 15 Правил хранения организаторами распространения информации в информационно-телекоммуникационной сети "Интернет" информации о фактах приема, передачи, доставки и (или) обработки голосовой информации, письменного текста, изображений, звуков, видео- или иных электронных сообщений пользователей информационно-телекоммуникационной сети "Интернет" и информации об этих пользователях и предоставления ее уполномоченным государственным органам, осуществляющим оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации, утвержденных постановлением Правительства Российской Федерации от 23 сентября 2020 г. N 1526 (далее - Правила хранения N 1526);

2) информации о фактах приема, передачи, доставки и (или) обработки голосовой информации, письменного текста, изображений, звуков, видео- или иных электронных сообщений пользователей информационно-телекоммуникационной сети "Интернет" (далее - пользователь) и информации об этих пользователях в соответствии с пунктами 3, 14 и 15 Правил хранения N 1526;

3) текстовых сообщений пользователей информационно-телекоммуникационной сети "Интернет", голосовой информации, изображений, звуков, видео-, иных электронных сообщений пользователей в соответствии с Правилами хранения организатором распространения информации в информационно-телекоммуникационной сети "Интернет" текстовых сообщений пользователей информационно-телекоммуникационной сети "Интернет", голосовой информации, изображений, звуков, видео-, иных электронных сообщений пользователей информационно-телекоммуникационной сети "Интернет", утвержденными постановлением Правительства Российской Федерации от 26 февраля 2022 г. N 256, действующим до 1 сентября 2028 г.;

4) информации, необходимой для декодирования принимаемых, передаваемых, доставляемых и (или) обрабатываемых электронных сообщений;

5) информации о событиях, зафиксированных в системных журналах в соответствии с подпунктом "т" пункта 14 настоящих требований.".

2. Пункт 16 дополнить абзацем следующего содержания:

"Срок хранения информации об объектах контроля, отобранной по критериям отбора, для доставки объектов на ПУ должен составлять не менее 12 часов с момента отбора.".

3. Приложение N 4 изложить в следующей редакции:

"Приложение N 4

к Требованиям к оборудованию

и программно-техническим средствам,

используемым организатором

распространения информации в сети

"Интернет" в эксплуатируемых

им информационных системах,

для проведения уполномоченными

государственными органами,

осуществляющими оперативно-розыскную

деятельность или обеспечение

безопасности Российской Федерации,

мероприятий в целях реализации

возложенных на них задач,

утвержденным приказом Министерства

цифрового развития, связи и массовых

коммуникаций Российской Федерации

от 29.10.2018 N 571

ОПИСАНИЕ ПРОТОКОЛА ВЗАИМОДЕЙСТВИЯ ПУ И ПТС ОРИ

___________________________________________________________________________

Classification.asn

Classification DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS TAGGED,

sorm-message-session,

sorm-message-trap,

sorm-message-task,

sorm-message-report,

sorm-message-management,

sorm-message-unformatted,

sorm-message-report-uni,

sorm-request-connection-ori-data-standart,

sorm-request-connection-ori-data-extended,

sorm-request-connection-ori-link,

sorm-request-connection-ori-aaa,

sorm-request-connection-ori-streams-content,

sorm-request-connection-ori-cert,

sorm-request-connection-ori-keys,

sorm-report-connection-ori-data,

sorm-report-connection-ori-link,

sorm-report-connection-ori-aaa,

sorm-report-connection-ori-streams-content,

sorm-report-connection-ori-cert,

sorm-report-connection-ori-keys,

sorm-request-abonent-ori,

sorm-report-abonent-ori,

sorm-request-dictionaries,

sorm-report-dictionary-telcos,

sorm-report-dictionary-ori-services,

sorm-report-dictionary-ori-events,

sorm-report-dictionary-ori-resources,

sorm-report-dictionary-ori-user-types,

sorm-report-dictionary-ori-payment-services,

sorm-request-presense,

sorm-report-presense-dictionaries,

sorm-report-presense-abonents-ori,

sorm-report-presense-connections-ori;

TAGGED ::= CLASS {

&id ObjectDescriptor UNIQUE,

&Data

}

WITH SYNTAX {

OID &id

DATA &Data

}

--- Классификация

OID ::= ObjectDescriptor

--- Подструктура сообщений

sorm-message-session OID ::= "280"

sorm-message-trap OID ::= "281"

sorm-message-task OID ::= "282"

sorm-message-report OID ::= "283"

sorm-message-management OID::= "284"

sorm-message-unformatted OID ::= "285"

sorm-message-report-uni OID::= "289"

--- Параметры соединений

sorm-request-connection-ori-data-standart OID::= "265"

sorm-request-connection-ori-data-extended OID::= "266"

sorm-request-connection-ori-link OID::= "267"

sorm-request-connection-ori-aaa OID::= "268"

sorm-request-connection-ori-streams-content OID::= "269"

sorm-request-connection-ori-cert OID::= "270"

sorm-request-connection-ori-keys OID::= "271"

sorm-report-connection-ori-data OID::= "10"

sorm-report-connection-ori-link OID::= "11"

sorm-report-connection-ori-aaa OID::= "12"

sorm-report-connection-ori-streams-content OID::= "13"

sorm-report-connection-ori-cert OID::= "14"

sorm-report-connection-ori-keys OID::= "15"

--- Абоненты

sorm-request-abonent-ori OID ::= "245"

sorm-report-abonent-ori OID ::= "70"

--- Справочники

sorm-request-dictionaries OID ::= "240"

sorm-report-dictionary-telcos OID::= "112"

sorm-report-dictionary-ori-services OID ::= "117"

sorm-report-dictionary-ori-events OID ::= "118"

sorm-report-dictionary-ori-resources OID ::= "119"

sorm-report-dictionary-ori-user-types OID ::= "130"

sorm-report-dictionary-ori-payment-services OID ::= "131"

--- Запрос о наличии данных

sorm-request-presense OID ::= "260"

sorm-report-presense-dictionaries OID::= "123"

sorm-report-presense-abonents-ori OID ::= "125"

sorm-report-presense-connections-ori OID ::= "126"

END

___________________________________________________________________________

Dictionaries.asn

Dictionaries DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS DictionaryTask,

DictionaryReport;

IMPORTS DateAndTime

FROM Sorm

TAGGED,

sorm-request-dictionaries,

sorm-report-dictionary-telcos,

sorm-report-dictionary-ori-services,

sorm-report-dictionary-ori-events,

sorm-report-dictionary-ori-resources,

sorm-report-dictionary-ori-user-types,

sorm-report-dictionary-ori-payment-services

FROM Classification;

--- Запрос

DictionaryTask ::= SEQUENCE {

id TAGGED.&id ({DictionaryTaskVariants}),

data TAGGED.&Data ({DictionaryTaskVariants}{@id})

}

DictionaryTaskVariants TAGGED ::= {dictionaryTask}

dictionaryTask TAGGED ::= {

OID {sorm-request-dictionaries}

DATA ObjectDescriptor --- тип запрашиваемого справочника (идентификатор отчета)

}

--- DATA ObjectDescriptor принимает значение одно из:

--- sorm-report-dictionary-telcos

--- sorm-report-dictionary-ori-services

--- sorm-report-dictionary-ori-events

--- sorm-report-dictionary-ori-resources

--- sorm-report-dictionary-ori-user-types

--- sorm-report-dictionary-ori-payment-services

--- Отчет

DictionaryReport ::= SEQUENCE {

id TAGGED.&id ({DictionaryRecordsVariants}), --- идентификтор записи справочника

data TAGGED.&Data ({DictionaryRecordsVariants}{@id}) --- данные записи справочника

}

DictionaryRecordsVariants TAGGED ::= {

telcosRecords --- коммуникационные интернет-сервисы ИС ОРИ

| oriServices --- виды информационных сервисов, предоставляемых ОРИ для пользователей

| oriEvents --- виды событий, регистрируемых ИС ОРИ при взаимодействии ИС ОРИ с пользователем

| oriResources --- типы информационных ресурсов, создаваемых пользователями в ИС ОРИ

| oriUserTypes --- типы пользователей, обслуживаемых ИС ОРИ

| oriPaymentServices --- виды платежных услуг (платежных сервисов), используемых ОРИ

}

--- коммуникационные интернет-сервисы ИС ОРИ

telcosRecords TAGGED::= {

OID {sorm-report-dictionary-telcos}

DATA SEQUENCE OF TelcosRecord

}

TelcosRecord::= SEQUENCE {

telco-id TelcoID, --- идентификатор ИС ОРИ

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL, --- время конца действия

description UTF8String (SIZE (1 .. 256)), --- описание (наименование) коммуникационного интернет-сервиса ИС ОРИ

mcc [0] NumericString (SIZE (3)) OPTIONAL, --- код страны

mnc [1] NumericString (SIZE (3)) OPTIONAL - код ОРИ

}

--- виды информационных сервисов, предоставляемых ОРИ для пользователей

oriServices TAGGED ::= {

OID {sorm-report-dictionary-ori-services}

DATA SEQUENCE OF OriServiceRecord

}

OriServiceRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор ИС ОРИ

service-id INTEGER (0 .. 65535), --- идентификатор сервиса

description UTF8String (SIZE (1 .. 256)), --- описание

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL --- время конца действия

}

--- виды событий, регистрируемых ИС ОРИ при взаимодействии ИС ОРИ с пользователем

oriEvents TAGGED ::= {

OID {sorm-report-dictionary-ori-events}

DATA SEQUENCE OF OriEventRecord

}

OriEventRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор ИС ОРИ

service-id INTEGER (0 .. 65535), --- идентификатор сервиса

event-id INTEGER (0 .. 65535), --- идентификатор события

description UTF8String (SIZE (1 .. 256)), --- описание

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL --- время конца действия

}

--- типы информационных ресурсов, создаваемых пользователями в ИС ОРИ

oriResources TAGGED ::= {

OID {sorm-report-dictionary-ori-resources}

DATA SEQUENCE OF OriResourceRecord

}

OriResourceRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор ИС ОРИ

service-id INTEGER (0 .. 65535), --- идентификатор сервиса

resource-id INTEGER (0 .. 65535), --- идентификатор ресурса

description UTF8String (SIZE (1 .. 256)), --- описание

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL --- время конца действия

}

--- типы пользователей, обслуживаемых ИС ОРИ

oriUserTypes TAGGED ::= {

OID {sorm-report-dictionary-ori-user-types}

DATA SEQUENCE OF OriUserTypeRecord

}

OriUserTypeRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор ИС ОРИ

service-id INTEGER (0 .. 65535), --- идентификатор сервиса

user-type-id INTEGER (0 .. 65535), --- тип пользователя

description UTF8String (SIZE (1 .. 256)), --- описание

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL --- время конца действия)

}

--- виды платежных услуг (платежных сервисов), используемых ОРИ

oriPaymentServices TAGGED ::= {

OID {sorm-report-dictionary-ori-payment-services}

DATA SEQUENCE OF OriPaymentServiceRecord

}

OriPaymentServiceRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор ИС ОРИ

service-id INTEGER (0 .. 65535), --- идентификатор сервиса

payment-service-id INTEGER (0 .. 65535), --- идентификатор платежной услуги

description UTF8String (SIZE (1 .. 256)), --- описание

begin-time DateAndTime, --- время начала действия

end-time DateAndTime OPTIONAL --- время конца действия

}

END

___________________________________________________________________________

IdentifiersORI.asn

IdentifiersORI DEFINITIONS IMPLICIT TAGS::=

BEGIN

EXPORTS UserID,

UserIdentifier,

UserTechnicalIdentifier,

ResourceIdentifier,

ResourceName,

ORIStreamID;

UserIdentifier::= SEQUENCE {

user-id [0] UserID, --- идентификатор пользователя в системе (имя пользователя)

user-type [1] INTEGER (0.. 65535) --- тип пользователя (расшифровывается по справочнику)

}

UserTechnicalIdentifier::= CHOICE {

ip-address [0] UserIPAddress, --- ip-адрес и порт

msisdn [1] UTF8String (SIZE (1.. 64)), --- номер телефона

email [2] UTF8String (SIZE (1.. 256)), --- электронная почта

program-name [3] UTF8String (SIZE (1.. 1024)), --- имя программы клиента

other [4] UTFSString (SIZE (1.. 1024)) --- прочая техническая информация

}

UserIPAddress::= SEQUENCE {

ip-address [0] UTF8String (SIZE (1.. 64)), --- ip-адрес

ip-port [1] INTEGER (0.. 65535) OPTIONAL --- TCP/UDP порт

}

UserID::= UTF8String (SIZE (1.. 128))

ResourceIdentifier::= SEQUENCE {

resource-name [0] ResourceName, --- наименование ресурса

resource-type[1]INTEGER(0..65535)OPTIONAL --- тип ресурса (расшифровывается по справочнику)

}

ResourceName::= UTF8String (SIZE (1.. 4096))

ORIStreamID::= UTF8String (SIZE (1 .. 1024))

END

___________________________________________________________________________

Locations.asn

Locations DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS LocationInfo;

IMPORTS ProjectionType

FROM NetworkIdentifiers;

MobileORILocation ::= SEQUENCE {

mcc [0] UTF8String (SIZE (1 .. 4)) OPTIONAL, --- код страны оператора связи пользователя ОРИ

mnc [1] UTF8String (SIZE (1 .. 3)) OPTIONAL, --- код оператора связи пользователя ОРИ

lac [2] INTEGER (0 .. 65535) OPTIONAL, --- код LAC оператора связи пользователя ОРИ

cell [3] INTEGER (0 .. 4294967295) OPTIONAL, --- код БС оператора связи пользователя ОРИ

network-operator [4] UTF8String (SIZE (1 .. 64)) OPTIONAL --- наименование оператора связи пользователя ОРИ

}

GeoLocation ::= SEQUENCE {

latitude-grade REAL, --- широта

longitude-grade REAL, --- долгота

projection-type ProjectionType --- тип проекции координат

}

LocationInfo ::= SEQUENCE {

mobile-ori-location [0] MobileORILocation OPTIONAL,

geo-location [1] GeoLocation OPTIONAL,

description [2] UTF8String (SIZE (1 .. 4096)) OPTIONAL

}

END

___________________________________________________________________________

Management.asn

Management DEFINITIONS IMPLICIT TAGS::=

BEGIN

EXPORTS managementMessage;

IMPORTS TAGGED,

sorm-message-management

FROM Classification;

managementMessage TAGGED::= {

OID {sorm-message-management}

DATA CHOICE {

request [0] ManagementRequest,

response [1] ManagementResponse

}

}

--- тип сообщения "команда управления ИС СОРМ"

ManagementRequest::= CHOICE {

get-structure [0] GetStructureRequest, --- запрос на получение структуры ИС СОРМ - КТС и модулей СПО

get-module-config [1] GetModuleConfigRequest, --- запрос на получение конфигурации КТС/модуля СПО

set-module-config [2] SetModuleConfigRequest, --- запрос на изменение конфигурации КТС/модуля СПО

check-module [3] CheckModuleRequest, --- запрос на получение состояния модуля

get-module-types [4] GetModuleTypesRequest --- запрос на получение типов модулей КТС и СПО

}

--- запрос на получение структуры ИС СОРМ - КТС и модулей СПО

GetStructureRequest::= NULL

--- запрос на получение конфигурации КТС/модуля СПО

GetModuleConfigRequest::= CHOICE {

hw-modules-list [0] RequestedHardwareModules, --- перечень идентификаторов узлов КТС ИС СОРМ

sw-modules-list [1] RequestedSoftwareModules --- перечень идентификаторов модулей СПО ИС СОРМ

}

RequestedHardwareModules::= SEQUENCE OF ModuleId

RequestedSoftwareModules::= SEQUENCE OF ModuleId

--- запрос на изменение конфигурации КТС/модуля СПО

SetModuleConfigRequest::= SEQUENCE {

module-id ModuleId, --- идентификатор конфигурируемого модуля

module-config ConfiguratedModule --- устанавливаемая в модуль конфигурация

}

ConfiguratedModule ::= CHOICE (

sw-module [0] SormSoftwareModule, --- для модуля СПО

hw-module [1] SormHardwareModule --- для узла КТС

}

--- запрос на получение состояния модуля

CheckModuleRequest ::= RequestedModulesList

RequestedModulesList ::= CHOICE {

hw-modules [0] RequestedHardwareModules, --- идентификаторы узлов КТС, для которых запрашивается состояние

sw-modules [1] RequestedSoftwareModules --- идентификаторы модулей СПО, для которых запрашивается состояние

}

--- запрос на получение типов модулей КТС и СПО

GetModuleTypesRequest ::= NULL

--- тип сообщения "ответ на команду управления ИС СОРМ"

ManagementResponse ::= CHOICE {

get-structure [0] GetStructureResponse, --- ответ на запрос получения структуры ИС СОРМ - КТС и модулей СПО

get-module-config [1] GetModuleConfigResponse, --- ответ на запрос получения конфигурации КТС/модуля СПО

set-module-config [2] SetModuleConfigResponse, --- ответ на запрос изменения конфигурации КТС/модуля СПО

check-module [3] CheckModuleResponse, --- ответ на запрос получения состояния модуля

get-module-types [4] GetModuleTypesResponse --- ответ на запрос получения типов модулей КТС и СПО

}

--- ответ на запрос получения структуры ИС СОРМ - КТС и модулей СПО

GetStructureResponse ::= SEQUENCE {

hw-modules SormHardwareModules, --- перечень всех узлов КТС

sw-modules SormSoftwareModules --- перечень всех модулей СПО

}

--- ответ на запрос получения конфигурации КТС/модуля СПО

GetModuleConfigResponse ::= SEQUENCE {

hw-modules SormHardwareModules, --- конфигурации запрошенных узлов КТС

sw-modules SormSoftwareModules --- конфигурации запрошенных модулей СПО ИС СОРМ

}

--- отчет на запрос изменения конфигурации КТС/модуля СПО

SetModuleConfigResponse ::= ConfiguratedModule --- установленная в модуль конфигурация

--- ответ на запрос получения состояния модуля

CheckModuleResponse ::= CHOICE {

hw-modules [0] SormHardwareModules, --- текущее состояние запрошенных узлов КТС

sw-modules [1] SormSoftwareModules --- текущее состояние запрошенных модулей СПО ИС СОРМ

}

--- ответ на запрос получения типов модулей КТС и СПО

GetModuleTypesResponse ::= SEQUENCE OF ModuleType

ModuleType ::= SEQUENCE {

module-type INTEGER (1 .. 512), --- идентификатор типа модуля

type-description UTF8String (SIZE (1 .. 128)) --- расшифровка типа модуля

}

SormHardwareModules ::= SEQUENCE OF SormHardwareModule

SormHardwareModule ::= SEQUENCE {

module-id ModuleId, --- уникальный идентификатор данного модуля

block-name INTEGER (0 .. 1024), --- номер блока КТС

module-name UTF8String (SIZE (1 .. 512)), --- наименование модуля

module-parameters HwParameterGroups --- значение группы параметров КТС

}

HwParameterGroups ::= SEQUENCE OF HwParameterGroup

HwParameterGroup ::= SEQUENCE {

group-name UTF8String (SIZE (1 .. 512)), --- наименование группы параметров для КТС

module-parameters ModuleParameters --- перечень параметров для КТС

}

SormSoftwareModules ::= SEQUENCE OF SormSoftwareModule

SormSoftwareModule ::= SEQUENCE {

module-id ModuleId, --- уникальный идентификатор данного модуля

hardware-module-id ModuleId, --- идентификатор КТС, на котором работает данный блок модуля СПО

block-name INTEGER (0 .. 1024), --- номер блока СПО модуля

module-name UTF8String (SIZE (1 .. 512)), --- наименование модуля

module-type INTEGER (1 .. 512), --- идентификатор типа модуля

module-parameters ModuleParameters, --- список параметров модуля

sub-modules-list SormSoftwareModules OPTIONAL --- субмодули

}

ModuleParameters ::= SEQUENCE OF ModuleParameter

ModuleParameter ::= SEQUENCE {

parameter-name UTFSString (SIZE (1 .. 256)), --- наименование параметра

read-only BOOLEAN, --- контролируемый или измеряемый параметр

parameter-value ParameterValue --- значение параметра

}

ParameterValue ::= CHOICE {

string [0] UTF8String (SIZE (1 .. 256)),

integer [1] INTEGER (0 .. 999999999),

boolean [2] BOOLEAN

}

--- уникальный идентификатор КТС/модуля СПО ИС СОРМ

ModuleId ::= OCTET STRING (SIZE (8))

END

___________________________________________________________________________

NetworkIdentifiers.asn

NetworkIdentifiers DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS NetworkPeerInfo,

ProjectionType;

--- информация об участнике соединения передачи данных

NetworkPeerInfo ::= SEQUENCE {

ip-address IPAddress, --- IP-адрес

ip-port IPPort OPTIONAL --- IP-порт

}

--- IP-адрес

IPAddress ::= CHOICE {

ipv4 [0] IPV4Address, --- IPv4-адрес

ipv6 [1] IPV6Address --- IPv6-адрес

}

--- IPv4-адрес

IPV4Address ::= OCTET STRING (SIZE (4))

--- IPv6-адрес

IPV6Address ::= OCTET STRING (SIZE (16))

--- IP/UDP/TCP-порт

IPPort ::= OCTET STRING (SIZE (2)) --- порт

--- тип проекции координат

ProjectionType ::= ENUMERATED {

wgs84 (0),

utm (1),

sgs85 (2)

}

END

___________________________________________________________________________

Reports.asn

Reports DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS reportMessage,

Acknowledgement;

IMPORTS TAGGED,

sorm-message-report

FROM Classification

MessageID

FROM Sorm

TaskID

FROM Tasks

DictionaryReport

FROM Dictionaries

PresenseReport

FROM ReportsPresense

AbonentsORIReport

FROM ReportsAbonentsORI

ConnectionsORIReport

FROM ReportsConnectionsORI;

reportMessage TAGGED ::= {

OID {sorm-message-report}

DATA CHOICE {

report [0] Report, --- тип сообщения "отчет"

ack [1] Acknowledgement --- тип сообщения "подтверждение"

}

}

--- Блок данных сообщения типа "отчет"

Report ::= SEQUENCE {

request-id MessageID, --- идентификатор запроса, запросивший отчет

task-id TaskID, --- идентификатор задачи, сгенерировавшей данный отчет

total-blocks-number INTEGER, --- общее количество блоков в отчете

block-number INTEGER, --- порядковый номер текущего блока

report-block ReportDataBiock --- блок данных отчета

}

ReportDataBlock ::= CHOICE {

dictionary [0] DictionaryReport, --- отчеты задач пополнения справочников (нормативно-справочная информация)

presense [6] PresenseReport, --- отчеты задач по запросу наличия в ИС СОРМ информации

abonents-ori [8] AbonentsORIReport, --- отчеты задач по принадлежности абонентов организаторов распространения

информации

connections-ori [9] ConnectionsORIReport --- отчеты задач по соединениям абонентов организаторов распространения

информации

}

--- Подтверждение приема блока, передается с номером сообщения соответствующему номеру сообщения блока

отчета

Acknowledgement ::= SEQUENCE {

successful BOOLEAN, --- признак успешного приема блока

broken-record INTEGER OPTIONAL, --- номер записи в отчете, обработанной на ПУ с ошибкой

error-description UTF8String (SIZE (1 .. 1024)) OPTIONAL --- описание ошибки приема блока в произвольной форме

}

END

___________________________________________________________________________

ReportsAbonentsORI.asn

ReportsAbonentsORI DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS AbonentsORIReport;

IMPORTS TAGGED,

sorm-report-abonent-ori

FROM Classification

DateAndTime

FROM Sorm

TelcoID

FROM Tasks

UserID,

UserIdentifier

FROM IdentifiersORI;

AbonentsORIReport ::= SEQUENCE {

id TAGGED.&id ({AbonentsORIReportVariants}),

data TAGGED.&Data ({AbonentsORIReportVariants}{@id})

}

AbonentsORIReportVariants TAGGED ::= {

reportAbonentORI

}

reportAbonentORI TAGGED ::= {

OID {sorm-report-abonent-ori}

DATA SEQUENCE OF AbonentsORIRecord

}

AbonentsORIRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор ИС ОРИ,

user-identifier UserIdentifier, --- идентификатор пользователя

datetime-registered DateAndTime, --- дата и время регистрации

abonent-info AbonentInfoORI, --- информация о пользователе

abonent-contacts [0] AbonentContactsORI OPTIONAL, --- контактные данные пользователя

im-identifiers [1] SEQUENCE OF AbonentImIdentifierORI OPTIONAL, --- идентификаторы пользователя в других

средствах электронного взаимодействия

datetime-updated [2] DateAndTime OPTIONAL, --- дата и время обновления информации

datetime-unregistered [3] DateAndTime OPTIONAL, --- дата и время прекращения регистрации

contract-date [4] DateAndTime OPTIONAL, --- дата и время заключения договора

contract [5] UTF8String (SIZE (1 .. 64)) OPTIONAL, --- номер договора

additional [6] SEQUENCE OF AdditionalInfo OPTIONAL --- дополнительная информация о пользователе

service-id [7] INTEGER (0 .. 65535) OPTIONAL, --- идентификатор сервиса (расшифровывается по справочнику)

}

--- информация о пользователе

AbonentInfoORI ::= SEQUENCE {

nick-name [0] UTF8String (SIZE (1 .. 1024)) OPTIONAL, --- псевдоним пользователя

birth-date GeneralizedTime OPTIONAL, --- дата рождения

address [1] ReportedAddressORI OPTIONAL, --- адресные данные

name-info [2] ReportedNameInfoORI OPTIONAL, --- ФИО

passport-info [3] ReportedPassportInfoORI OPTIONAL, --- паспортные данные

langs [4] SEQUENCE OF UTF8String (SIZE (1 .. 64)) OPTIONAL, --- список языков, которыми владеет пользователь

relatives [5] SEQUENCE OF UserID OPTIONAL --- список родственников пользователя

}

--- адресные данные

ReportedAddressORI::= CHOICE {

struct-info [0] ReportedStructAddressORI,

unstruct-info [1] UTF8String (SIZE (1.. 1024))

}

ReportedStructAddressORI::= SEQUENCE {

country [0] UTF8String (SIZE (1.. 128)) OPTIONAL, --- страна

region (1) UTF8String (SIZE (1.. 128)) OPTIONAL, --- область

city [2] UTF8String (SIZE (1.. 128)) OPTIONAL, --- город, поселок, деревня

street [3] UTF8String (SIZE (1.. 128)) OPTIONAL, --- улица

building [4] UTF8String (SIZE (1.. 128)) OPTIONAL, --- дом, строение

apartment [5] UTF8String (SIZE (1.. 128)) OPTIONAL --- квартира, офис

}

--- ФИО

ReportedNameInfoORI::= CHOICE {

struct-info [0] ReportedStructNameInfoORI,

unstruct-info [1] UTF8String (SIZE (1.. 1024))

}

ReportedStructNameInfoORI::= SEQUENCE {

given-name [0] UTF8String (SIZE (1.. 128)) OPTIONAL, --- имя

initial [1] UTF8String (SIZE (1.. 128)) OPTIONAL, --- отчество (при наличии)

family-name [2] UTF8String (SIZE (1.. 128)) OPTIONAL --- фамилия

}

--- паспортные данные

ReportedPassportInfoORI::= CHOICE {

struct-info [0] ReportedStructPassroptInfoORI,

unstruct-info [1] UTF8String (SIZE (1.. 1024))

}

ReportedStructPassroptInfoORI::= SEQUENCE {

passport-serial [0] UTF8String (SIZE (1..16)) OPTIONAL, --- серия паспорта

passport-number [1] UTF8String (SIZE (1..16)) OPTIONAL --- номер паспорта

}

--- контактные данные пользователя

AbonentContactsORI::= SEQUENCE {

msisdn [0] SEQUENCE OF UTF8String (SIZE (1.. 64)) OPTIONAL, --- список номеров телефона пользователя

email [1] SEQUENCE OF UTF8String (SIZE (1.. 256)) OPTIONAL --- список адресов электронной почты пользователя

}

--- идентификаторы пользователя в других средствах электронного взаимодействия

AbonentImIdentifierORI::= SEQUENCE {

service-name UTF8String (SIZE (1.. 128)), --- наименование сервиса

service-id UTF8String (SIZE (1.. 256)) --- идентификатор пользователя в сервисе

}

--- дополнительная информация о пользователе

AdditionalInfo::= SEQUENCE {

title UTFSString (SIZE (1.. 1024)), --- наименование о дополнительных сведениях

content UTF8String (SIZE (1.. 4096)) --- содержание дополнительных сведений

}

END

───────────────────────────────────────────────────────────────────────────

ReportsConnectionsORI.asn

ReportsConnectionsORI DEFINITIONS IMPLICIT TAGS::=

BEGIN

EXPORTS ConnectionsORIReport,

reportConnectionsDataORI,

reportConnectionsLinkORI,

reportConnectionsAAAORI,

reportConnectionsStreamsContentORI,

reportConnectionsCertORI,

reportConnectionsKeysORI;

IMPORTS TAGGED,

sorm-report-connection-ori-data,

sorm-report-connection-ori-link,

sorm-report-connection-ori-aaa,

sorm-report-connection-ori-streams-content,

sorm-report-connection-ori-cert,

sorm-report-connection-ori-keys

FROM Classification

DateAndTime

FROM Sorm

TelcoID

FROM Tasks

UserID,

UserIdentifier,

UserTechnicalIdentifier,

ResourceIdentifier,

ORIStreamID

FROM IdentifiersORI

NetworkPeerInfo

FROM NetworkIdentifiers

LocationInfo

FROM Locations;

ConnectionsORIReport::= SEQUENCE {

id TAGGED.&id ({ReportedConnectionsORIVariants}),

data TAGGED.&Data ({ReportedConnectionsORIVariants}{@id})

}

ReportedConnectionsORIVariants TAGGED::= {

reportConnectionsDataORI - события информационного взаимодействия пользователей в ИС ОРИ

| reportConnectionsLinkORI --- события добавления/исключения связанных пользователей

| reportConnectionsAAAORI --- события регистрации, прекращения регистрации, авторизации, выхода

из информационного сервиса

| reportConnectionsStreamsContentORI - содержимое изображений, звуков, голосовой информации, видео- и иных

электронных сообщений

| reportConnectionsCertORI

| reportConnectionsKeysORI

}

--- события информационного взаимодействия пользователей в ИС ОРИ

reportConnectionsDataORI TAGGED::= {

OID {sorm-report-connection-ori-data}

DATA SEQUENCE OF ConnectionDataORIRecord

}

ConnectionDataORIRecord::= SEQUENCE {

telco-id TelcoID, - идентификатор ИС ОРИ

arrive-datetime DateAndTime, --- дата и время поступления информации

datetime DateAndTime, --- дата и время

service-id INTEGER (0.. 65535), --- идентификатор сервиса (расшифровывается по справочнику)

abonent-identifier UserIdentifier, --- идентификатор пользователя

abonent-technical-identifier SEQUENCE OF UserTechnicalIdentifier, - технические данные, идентифицирующие

пользователя

event-id INTEGER (0.. 65535), - тип события (расшифровывается по справочнику)

contacts-identifier SEQUENCE OF UserIdentifier, --- идентификаторы контактов

abonent-location [0] Locationinfo OPTIONAL, --- местоположение пользователя

resource-identifier [1] ResourceIdentifier OPTIONAL, --- ресурс

resource-info [2] ResourceMetadataInfoORI OPTIONAL, --- техническая информация о ресурсе

owner-identifier [3] UserIdentifier OPTIONAL, --- идентификатор владельца ресурса

message-text [4] UTF8String OPTIONAL, --- текст сообщения без разметки и иной служебной коммуникационной

информации

payment-id [5] PaymentInfoORI OPTIONAL, --- техническая информация о платеже

stream-id [6] ORIStreamID OPTIONAL --- идентификатор содержимого

}

ResourceMetadataInfoORI::= CHOICE {

files-metadata [0] SEQUENCE OF FileMetadata,

stream-metadata [1] StreamMetadata

}

--- техническая информация о файловых данных

FileMetadata::= SEQUENCE {

filename UTF8String (SIZE (1.. 256)),

filesize INTEGER,

file-type UTF8String (SIZE (1.. 256)) OPTIONAL --- MIME-тип данных для файла

}

--- техническая информация о потоковых данных

StreamMetadata::= SEQUENCE {

timestamp [0] GeneralizedTime OPTIONAL,

duration [1] INTEGER OPTIONAL,

start-offset [2] INTEGER OPTIONAL,

stop-offset [3] INTEGER OPTIONAL

}

PaymentInfoORI::= SEQUENCE {

payment-identifier UTF8String (SIZE (1.. 128)), --- идентификатор транзакции, счета, кошелька

payment-service-id INTEGER (0.. 65535), --- идентификатор платежного сервиса (расшифровывается по справочнику)

payment-info UTF8String (SIZE (1.. 4096)) OPTIONAL --- дополнительная информация

}

--- события добавления/исключения связанных пользователей

reportConnectionsLinkORI TAGGED::= {

OID {sorm-report-connection-ori-link}

DATA SEQUENCE OF ConnectionLinkORIRecord

}

ConnectionLinkORIRecord::= SEQUENCE {

telco-id TelcoID, - идентификатор ИС ОРИ,

arrive-datetime DateAndTime, --- дата и время поступления информации

datetime DateAndTime, - дата и время

service-id INTEGER (0.. 65535), --- идентификатор сервиса (расшифровывается по справочнику)

abonent-id UserIdentifier, --- идентификатор пользователя, устанавливающего связь

event-id INTEGER (0.. 65535), --- тип события (расшифровывается по справочнику)

linked-identifier LinkedIdentifier - идентификатор объекта, с которым установлена связь

}

LinkedIdentifier::= CHOICE {

connected-user-identifier [0] UserIdentifier, --- идентификатор пользователя

connected-resource-identifier [1] ResourceIdentifier --- ресурс

}

--- события регистрации, прекращения регистрации, авторизации, выхода из информационного сервиса

reportConnectionsAAAORI TAGGED::= {

OID {sorm-report-connection-ori-aaa}

DATA SEQUENCE OF ConnectionAAAORIRecord

}

ConnectionAAAORIRecord::= SEQUENCE {

telco-id TelcoID, - идентификатор ИС ОРИ,

arrive-datetime DateAndTime, --- дата и время поступления информации

datetime DateAndTime, --- дата и время

service-id INTEGER (0.. 65535), --- идентификатор сервиса (расшифровывается по справочнику)

abonent-identifier UserIdentifier, --- идентификатор пользователя

abonent-technical-identifier SEQUENCE OF UserTechnicalIdentifier, - технические данные, идентифицирующие пользователя

event-id INTEGER (0.. 65535), --- тип события (расшифровывается по справочнику)

abonent-location [0] LocationInfo OPTIONAL --- местоположение пользователя

}

--- содержимое изображений, звуков, голосовой информации, видео- и иных электронных сообщений

reportConnectionsStreamsContentORI TAGGED::= {

OID {sorm-report-connection-ori-streams-content}

DATA ConnectionsStreamsContentORIRecords

}

ConnectionsStreamsContentORIRecords::= CHOICE {

flow-data [0] SEQUENCE OF ConnectionsStreamsContentORIRecordFlow,

file-data [1] SEQUENCE OF ConnectionsStreamsContentORIRecordFile

}

ConnectionsStreamsContentORIRecordFlow::= SEQUENCE {

data OCTET STRING (SIZE (1..1048576)), --- содержимое блока

codec UTF8String (SIZE (1.. 4096)) OPTIONAL, --- описание способа кодирования в формате SDP в соответствии

с форматом RFC 2327;

direction StreamsContentORIDirection OPTIONAL --- направление передачи

}

StreamsContentORIDirection::= ENUMERATED {

client-server (0),

server-client (1)

}

ConnectionsStreamsContentORIRecordFile::= OCTET STRING (SIZE (1.. 1048576))

reportConnectionsCertORI TAGGED::= {

OID {sorm-report-connection-ori-cert}

DATA SEQUENCE OF ConnectionCertORIRecord

}

ConnectionCertORIRecord::= SEQUENCE {

telco-id TelcoID,

arrive-datetime DateAndTime,

datetime-from DateAndTime,

datetime-to DateAndTime OPTIONAL,

client NetworkPeerInfo,

server NetworkPeerInfo,

client-random OCTET STRING (SIZE (1.. 512)),

pre-master-key OCTET STRING (SIZE (1.. 512)),

server-random [0] OCTET STRING (SIZE (1.. 512)) OPTIONAL

}

reportConnectionsKeysORI TAGGED::= {

OID {sorm-report-connection-ori-keys}

DATA SEQUENCE OF ConnectionKeysORIRecord

}

ConnectionKeysORIRecord::= SEQUENCE {

telco-id TelcoID,

arrive-datetime DateAndTime,

datetime-from DateAndTime,

datetime-to [0] DateAndTime OPTIONAL,

as-server [1] INTEGER OPTIONAL,

as-client [2] INTEGER OPTIONAL,

client NetworkPeerInfo,

server NetworkPeerInfo,

client-random OCTET STRING (SIZE (1.. 512)),

pre-master-key OCTET STRING (SIZE (1.. 512)),

server-random [0] OCTET STRING (SIZE (1.. 512)) OPTIONAL,

sni [1] UTF8String (SIZE (1.. 128)) OPTIONAL,

user-id [2] UTF8String (SIZE (1.. 64)) OPTIONAL,

user-login [3] UTF8String (SIZE (1.. 64)) OPTIONAL,

key-exchange [4] UTF8String (SIZE (1.. 16)) OPTIONAL,

chipher-suite [5] INTEGER OPTIONAL,

client-region [6] UTF8String (SIZE (1.. 10)) OPTIONAL,

server-region [7] UTF8String (SIZE (1.. 10)) OPTIONAL,

service-name [8] UTF8String (SIZE (1.. 16)) OPTIONAL

}

END

───────────────────────────────────────────────────────────────────────────

ReportsPresense.asn

ReportsPresense DEFINITIONS IMPLICIT TAGS::=

BEGIN

EXPORTS PresenseReport;

IMPORTS TAGGED,

sorm-report-presense-dictionaries,

sorm-report-presense-abonents-ori,

sorm-report-presense-connections-ori

FROM Classification

FindRange

FROM Sorm

TelcoID

FROM Tasks;

--- отчет по запросу наличия информации

PresenseReport::= SEQUENCE {

id TAGGED.&id ({ReportedPresensesVariants}),

data TAGGED.&Data ({ReportedPresensesVariants}{@id})

}

ReportedPresensesVariants TAGGED::= {

dictionariesPresence --- отчет по наличию информации по справочникам

| abonentsORIPresence --- отчет по наличию информации по данным о пользователях ОРИ и их идентификаторам

Полный текст документа вы можете просмотреть в коммерческой версии КонсультантПлюс.