<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%B0%D1%81%D0%BA%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%BA%D0%BE%D0%BD%D1%84%D0%B8%D0%B4%D0%B5%D0%BD%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85</id>
	<title>Маскировка конфиденциальных данных - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%B0%D1%81%D0%BA%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%BA%D0%BE%D0%BD%D1%84%D0%B8%D0%B4%D0%B5%D0%BD%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85"/>
	<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9C%D0%B0%D1%81%D0%BA%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%BA%D0%BE%D0%BD%D1%84%D0%B8%D0%B4%D0%B5%D0%BD%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;action=history"/>
	<updated>2026-09-16T16:21:15Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://doc.ruscomtech.ru/index.php?title=%D0%9C%D0%B0%D1%81%D0%BA%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%BA%D0%BE%D0%BD%D1%84%D0%B8%D0%B4%D0%B5%D0%BD%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=5825&amp;oldid=prev</id>
		<title>IKuznetsov: Новая страница: «Телеметрические данные часто могут включать конфиденциальные данные (например, wikipedia:Pe...»</title>
		<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9C%D0%B0%D1%81%D0%BA%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%BA%D0%BE%D0%BD%D1%84%D0%B8%D0%B4%D0%B5%D0%BD%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=5825&amp;oldid=prev"/>
		<updated>2025-10-08T05:07:45Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «Телеметрические данные часто могут включать конфиденциальные данные (например, wikipedia:Pe...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Телеметрические данные часто могут включать конфиденциальные данные (например, [[wikipedia:Personal_data|персональные данные]]﻿), которые может потребоваться редактировать по соображениям безопасности и нормативным требованиям. Хотя это можно реализовать на стороне приложения, обычно лучше всего обрабатывать это централизованно, используя шлюзы, такие как &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039;. Это позволяет централизованно управлять правилами редактирования во всех ваших приложениях и сервисах, без необходимости обновлять код каждый раз, когда требуется новое правило редактирования.&lt;br /&gt;
&lt;br /&gt;
На этой странице показаны примеры конфигураций &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039; для редактирования определенных конфиденциальных данных (например, номеров кредитных карт или адресов электронной почты), которые могут появляться в телеметрических данных и которые следует маскировать/редактировать перед тем, как они покинут вашу сеть.&lt;br /&gt;
&lt;br /&gt;
== Предустановка ==&lt;br /&gt;
&lt;br /&gt;
* Один из следующих дистрибутивов &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039; с процессорами [https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/v0.136.0/processor/transformprocessor преобразования]﻿ и/или [https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/v0.136.0/processor/redactionprocessor редактирования]﻿ :&lt;br /&gt;
*&lt;br /&gt;
** [[Collector Ключ-АСТРОМ|&amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039; Ключ-АСТРОМ]]&lt;br /&gt;
** [[Collector Ключ-АСТРОМ|OpenTelemetry Contrib]]&lt;br /&gt;
** [[Collector Ключ-АСТРОМ|Пользовательская версия Builder]]&lt;br /&gt;
* [[Экспорт с помощью OTLP|URL-адрес конечной точки API Ключ-АСТРОМ]], на которую следует экспортировать данные.&lt;br /&gt;
* [[Экспорт с помощью OTLP|Токен API]] с соответствующей областью доступа (требуется только для &amp;#039;&amp;#039;&amp;#039;SaaS&amp;#039;&amp;#039;&amp;#039; и АктивногоШлюза)&lt;br /&gt;
&lt;br /&gt;
Информацию о настройке &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039; с использованием указанной ниже конфигурации см. в разделах [[Развертывание Collector|Развертывание коллектора]] и [[Настройка Collector|Конфигурация коллектора]].&lt;br /&gt;
&lt;br /&gt;
== Процессор редактирования в сравнении процессора преобразования ==&lt;br /&gt;
В следующих примерах используются эти два [https://opentelemetry.io/docs/collector/architecture/#processors процессора]﻿ &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039; :&lt;br /&gt;
&lt;br /&gt;
* процессор [https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/v0.136.0/processor/transformprocessor преобразования]&lt;br /&gt;
* процессор [https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/v0.136.0/processor/redactionprocessor редактирования]&lt;br /&gt;
&lt;br /&gt;
Хотя в следующих примерах оба процессора используются для маскирования данных, каждый из них имеет свою собственную цель. Процессор редактирования прост и принимает список значений, на основе которого соответствующие данные будут полностью отредактированы. С другой стороны, цель процессора преобразования более универсальна и выходит за рамки простого редактирования данных.&lt;br /&gt;
&lt;br /&gt;
Для редактирования данных обычно можно использовать любой из процессоров, и вы можете выбрать наиболее подходящий для вашего случая. Например, для полного редактирования данных процессор редактирования может быть проще в использовании. С другой стороны, частичное редактирование данных можно выполнить только с помощью процессора преобразования. Кроме того, процессор преобразования может фильтровать данные по телу логов, тогда как процессор редактирования имеет доступ только к атрибутам.&lt;br /&gt;
&lt;br /&gt;
== Демо конфигурация ==&lt;br /&gt;
Этот документ &amp;#039;&amp;#039;&amp;#039;YAML&amp;#039;&amp;#039;&amp;#039; представляет собой базовый скелет конфигурации &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039;, содержащий базовые общие компоненты (то есть приемники, экспортеры и определение конвейера).&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|receivers:&lt;br /&gt;
&lt;br /&gt;
  otlp:&lt;br /&gt;
&lt;br /&gt;
    protocols:&lt;br /&gt;
&lt;br /&gt;
      grpc:&lt;br /&gt;
&lt;br /&gt;
        endpoint: 0.0.0.0:4317&lt;br /&gt;
&lt;br /&gt;
      http:&lt;br /&gt;
&lt;br /&gt;
        endpoint: 0.0.0.0:4318&lt;br /&gt;
&lt;br /&gt;
processors:&lt;br /&gt;
&lt;br /&gt;
  PLACEHOLDER-FOR-PROCESSOR-CONFIGURATIONS&lt;br /&gt;
&lt;br /&gt;
exporters:&lt;br /&gt;
&lt;br /&gt;
  otlphttp:&lt;br /&gt;
&lt;br /&gt;
    endpoint: ${env:DT_ENDPOINT}&lt;br /&gt;
&lt;br /&gt;
    headers:&lt;br /&gt;
&lt;br /&gt;
      &amp;quot;Authorization&amp;quot;: &amp;quot;Api-Token ${env:DT_API_TOKEN}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
service:&lt;br /&gt;
&lt;br /&gt;
  pipelines:&lt;br /&gt;
&lt;br /&gt;
    traces:&lt;br /&gt;
&lt;br /&gt;
      receivers: [otlp]&lt;br /&gt;
&lt;br /&gt;
      processors: [PLACEHOLDER-FOR-PROCESSOR-REFERENCES]&lt;br /&gt;
&lt;br /&gt;
      exporters: [otlphttp]&lt;br /&gt;
&lt;br /&gt;
    metrics:&lt;br /&gt;
&lt;br /&gt;
      receivers: [otlp]&lt;br /&gt;
&lt;br /&gt;
      processors: [PLACEHOLDER-FOR-PROCESSOR-REFERENCES]&lt;br /&gt;
&lt;br /&gt;
      exporters: [otlphttp]&lt;br /&gt;
&lt;br /&gt;
    logs:&lt;br /&gt;
&lt;br /&gt;
      receivers: [otlp]&lt;br /&gt;
&lt;br /&gt;
      processors: [PLACEHOLDER-FOR-PROCESSOR-REFERENCES]&lt;br /&gt;
&lt;br /&gt;
      exporters: [otlphttp]&lt;br /&gt;
|}&lt;br /&gt;
Обязательно замените значения заполнителей в документе соответствующими конфигурациями:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;PLACEHOLDER-FOR-PROCESSOR-CONFIGURATIONS&amp;lt;/code&amp;gt;: соответствующая конфигурация процессора&lt;br /&gt;
* &amp;lt;code&amp;gt;PLACEHOLDER-FOR-PROCESSOR-REFERENCES&amp;lt;/code&amp;gt;: ссылки на соответствующие объекты процессора для отдельных типов сигналов&lt;br /&gt;
&lt;br /&gt;
=== IP-адреса ===&lt;br /&gt;
Используя процессор преобразования, мы маскируем атрибут &amp;lt;code&amp;gt;client.address&amp;lt;/code&amp;gt; с помощью [https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/v0.136.0/pkg/ottl/ottlfuncs/README.md#set оператора﻿ &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt;].&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|transform:&lt;br /&gt;
&lt;br /&gt;
  error_mode: ignore&lt;br /&gt;
&lt;br /&gt;
  trace_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: span&lt;br /&gt;
&lt;br /&gt;
      statements: &amp;amp;filter-statements&lt;br /&gt;
&lt;br /&gt;
        # this will not only mask end user client IP addresses,&lt;br /&gt;
&lt;br /&gt;
        # but also the address of a server acting as a client when establishing a connection to another server&lt;br /&gt;
&lt;br /&gt;
        - set(attributes[&amp;quot;client.address&amp;quot;], &amp;quot;&amp;lt;masked-clientip-ot&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
  metric_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: datapoint&lt;br /&gt;
&lt;br /&gt;
      statements: *filter-statements&lt;br /&gt;
&lt;br /&gt;
  log_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: log&lt;br /&gt;
&lt;br /&gt;
      statements: *filter-statements&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Адреса электронной почты ===&lt;br /&gt;
Используя процессор преобразования, мы маскируем атрибут &amp;lt;code&amp;gt;user.email&amp;lt;/code&amp;gt; с помощью [https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/v0.136.0/pkg/ottl/ottlfuncs/README.md#set оператора﻿ &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt;].&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|transform:&lt;br /&gt;
&lt;br /&gt;
  error_mode: ignore&lt;br /&gt;
&lt;br /&gt;
  trace_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: span&lt;br /&gt;
&lt;br /&gt;
      statements: &amp;amp;filter-statements&lt;br /&gt;
&lt;br /&gt;
        - set(attributes[&amp;quot;user.email&amp;quot;], &amp;quot;&amp;lt;masked-email-ot&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
  metric_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: datapoint&lt;br /&gt;
&lt;br /&gt;
      statements: *filter-statements&lt;br /&gt;
&lt;br /&gt;
  log_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: log&lt;br /&gt;
&lt;br /&gt;
      statements: *filter-statements&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== API-токены Ключ-АСТРОМ ===&lt;br /&gt;
Используя процессор редактирования, мы применяем регулярное выражение &amp;lt;code&amp;gt;dt0[a-z]0[1-9]\.[A-Za-z0-9]{24}\.([A-Za-z0-9]{64})&amp;lt;/code&amp;gt; для маскировки всех вхождений токенов API Ключ-АСТРОМ в наших телеметрических данных.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|redaction:&lt;br /&gt;
&lt;br /&gt;
  allow_all_keys: true&lt;br /&gt;
&lt;br /&gt;
  blocked_values:&lt;br /&gt;
&lt;br /&gt;
    - dt0[a-z]0[1-9]\.[A-Za-z0-9]{24}\.([A-Za-z0-9]{64})&lt;br /&gt;
&lt;br /&gt;
  summary: info&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Имена пользователей ===&lt;br /&gt;
Используя процессор преобразования, мы маскируем атрибуты &amp;lt;code&amp;gt;user.id&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;user.name&amp;lt;/code&amp;gt;, и &amp;lt;code&amp;gt;user.full_name&amp;lt;/code&amp;gt; с помощью [https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/v0.136.0/pkg/ottl/ottlfuncs/README.md#set оператора﻿ &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt;].&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|transform:&lt;br /&gt;
&lt;br /&gt;
  error_mode: ignore&lt;br /&gt;
&lt;br /&gt;
  trace_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: span&lt;br /&gt;
&lt;br /&gt;
      statements: &amp;amp;filter-statements&lt;br /&gt;
&lt;br /&gt;
        - set(attributes[&amp;quot;user.id&amp;quot;], &amp;quot;&amp;lt;masked-userid-ot&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
        - set(attributes[&amp;quot;user.name&amp;quot;], &amp;quot;&amp;lt;masked-username-ot&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
        - set(attributes[&amp;quot;user.full_name&amp;quot;], &amp;quot;&amp;lt;masked-userfullname-ot&amp;gt;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
  metric_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: datapoint&lt;br /&gt;
&lt;br /&gt;
      statements: *filter-statements&lt;br /&gt;
&lt;br /&gt;
  log_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: log&lt;br /&gt;
&lt;br /&gt;
      statements: *filter-statements&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Номера кредитных карт ===&lt;br /&gt;
Используя процессор преобразования, мы настраиваем три [https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/v0.136.0/pkg/ottl/ottlfuncs/README.md#replace_all_patterns оператора﻿ &amp;lt;code&amp;gt;replace_all_patterns&amp;lt;/code&amp;gt;] для маскировки любых вхождений номеров кредитных карт и маскировки всего, кроме последних четырех цифр.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|transform:&lt;br /&gt;
&lt;br /&gt;
  error_mode: ignore&lt;br /&gt;
&lt;br /&gt;
  trace_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: span&lt;br /&gt;
&lt;br /&gt;
      statements: &amp;amp;filter-statements&lt;br /&gt;
&lt;br /&gt;
        - replace_all_patterns(attributes, &amp;quot;value&amp;quot;, &amp;quot;^3\\s*[47](\\s*[0-9]){9}((\\s*[0-9]){4})$&amp;quot;, &amp;quot;&amp;lt;masked-pcard$$2-ot&amp;gt;&amp;quot;) where IsValidLuhn(attributes[&amp;quot;value&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
        - replace_all_patterns(attributes, &amp;quot;value&amp;quot;, &amp;quot;^(5[1-5]([0-9]){2}|222[1-9]|22[3-9]\\d|2[3-6]\\d{2}|27[0-1]\\d|2720)(\\s*[0-9]){8}\\s*([0-9]{4})$&amp;quot;, &amp;quot;&amp;lt;masked-pcard$$4-ot&amp;gt;&amp;quot;) where IsValidLuhn(attributes[&amp;quot;value&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
        - replace_all_patterns(attributes, &amp;quot;value&amp;quot;, &amp;quot;^4(\\s*[0-9]){8,14}\\s*(([0-9]\\s*){4})$&amp;quot;, &amp;quot;&amp;lt;masked-pcard$$2-ot&amp;gt;&amp;quot;) where IsValidLuhn(attributes[&amp;quot;value&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
  metric_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: datapoint&lt;br /&gt;
&lt;br /&gt;
      statements: *filter-statements&lt;br /&gt;
&lt;br /&gt;
  log_statements:&lt;br /&gt;
&lt;br /&gt;
    - context: log&lt;br /&gt;
&lt;br /&gt;
      statements: *filter-statements&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Номера IBAN ===&lt;br /&gt;
Используя процессор редактирования, мы используем регулярное выражение &amp;lt;code&amp;gt;^[A-Z]{2}[0-9]{2}(\\s*[A-Z0-9]){8,30}$&amp;lt;/code&amp;gt; для маскировки всех вхождений &amp;#039;&amp;#039;&amp;#039;IBAN&amp;#039;&amp;#039;&amp;#039; в наших телеметрических данных.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|redaction:&lt;br /&gt;
&lt;br /&gt;
  allow_all_keys: true&lt;br /&gt;
&lt;br /&gt;
  blocked_values:&lt;br /&gt;
&lt;br /&gt;
    - &amp;quot;^[A-Z]{2}[0-9]{2}(\\s*[A-Z0-9]){8,30}$&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  summary: info&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Компоненты ==&lt;br /&gt;
Для нашей конфигурации мы используем следующие компоненты.&lt;br /&gt;
&lt;br /&gt;
=== Приемники ===&lt;br /&gt;
В разделе &amp;lt;code&amp;gt;receivers&amp;lt;/code&amp;gt; мы указываем стандартный приемник &amp;lt;code&amp;gt;otlp&amp;lt;/code&amp;gt;, как активный компонент приемника для нашего экземпляра &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
=== Процессоры ===&lt;br /&gt;
В разделе &amp;lt;code&amp;gt;processors&amp;lt;/code&amp;gt; мы размещаем конфигурацию для соответствующих экземпляров процессора.&lt;br /&gt;
&lt;br /&gt;
=== Экспортеры ===&lt;br /&gt;
В разделе &amp;lt;code&amp;gt;exporters&amp;lt;/code&amp;gt; мы указываем [https://github.com/open-telemetry/opentelemetry-collector/tree/v0.136.0/exporter/otlphttpexporter экспортер &amp;lt;code&amp;gt;otlphttp&amp;lt;/code&amp;gt;]﻿ по умолчанию и настраиваем его с помощью URL-адреса нашего API Ключ-АСТРОМ и требуемого токена аутентификации.&lt;br /&gt;
&lt;br /&gt;
Для этой цели мы устанавливаем следующие две переменные среды и ссылаемся на них в значениях конфигурации для &amp;lt;code&amp;gt;endpoint&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;Authorization&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;DT_ENDPOINT&amp;lt;/code&amp;gt; содержит базовый URL-адрес конечной точки API Ключ-АСТРОМ (например, &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://{your-environment-id}.live.astromkey.com/api/v2/otlp&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;)&lt;br /&gt;
* &amp;lt;code&amp;gt;DT_API_TOKEN&amp;lt;/code&amp;gt; содержит токен API&lt;br /&gt;
&lt;br /&gt;
=== Сервисные контейнеры ===&lt;br /&gt;
В &amp;lt;code&amp;gt;service&amp;lt;/code&amp;gt; в конечном итоге мы собираем все настроенные объекты в контейнеры для отдельных телеметрических сигналов (трассы и т. д.) и заставляем экземпляр &amp;#039;&amp;#039;&amp;#039;Collector&amp;#039;&amp;#039;&amp;#039; выполнять настроенные задачи.&lt;/div&gt;</summary>
		<author><name>IKuznetsov</name></author>
	</entry>
</feed>