Генерация уникальных порядковых номеров в браузере для логирования

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

Одна небольшая проблема с этим заключается в том, чтобы выяснить, где провести границу того, где начинается запрос. Если кто-то говорит, что эта граница начинается в браузере, то генерация уникального идентификатора остается на усмотрение браузера с использованием некоторая библиотека GUID. Будет ли это возможным решением, или я должен переосмыслить это?


person oligofren    schedule 24.05.2017    source источник


Ответы (1)


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

Таким образом, для ведения журналов (особенно если это также включает журналы, связанные с безопасностью), я бы генерировал идентификаторы на веб-сервере, браузер не может сделать это безопасно.

person Gabor Lengyel    schedule 24.05.2017
comment
Спасибо, я знал о передаче контроля клиенту, но хороший момент о том, чтобы позволить вредоносному клиенту умышленно испортить журналы. - person oligofren; 24.05.2017