#azure #security #logging #analytics
Вопрос:
У нас есть таблица в Azure Log Analytics, в которой хранятся журналы из многих разных систем.
Например, в нашей CommonSecurityLog
таблице есть журналы с разных брандмауэров. Я создал пользовательскую роль RBAC, которая разрешает доступ только к этой конкретной таблице, но хотела бы пойти дальше и ограничить доступ только к определенным строкам.
Я провел некоторое исследование, но не могу найти способ сделать это, возможно ли это?
Ответ №1:
В Azure это невозможно сделать изначально — RBAC поддерживает управление доступом только на уровне таблиц.
РЕДАКТИРОВАТЬ: Итак, как упоминал @FidelCasto, есть также возможность использовать пользовательские журналы. Это будет полезно во многих случаях, когда вам нужно собрать пользовательские данные, связанные с Windows, связанные с приложениями. Это может быть более удобным вариантом для пользователя, но, очевидно, будут и другие случаи, когда он не будет применяться, особенно когда у вас есть устройства, отправляющие нестандартные журналы.
Если ваши требования не удовлетворяются указанным выше параметром, единственным другим универсальным вариантом является размещение сборщика журналов между брандмауэрами и Azure и использование сценария для фильтрации журналов перед их отправкой через API REST Log Analytics (OpInsights). Для этого можно использовать сценарий PowerShell.
- Каждый брандмауэр будет отправлять свои журналы локальному/удаленному сборщику журналов.
- Создайте запрос/фильтр скрипта по журналам с помощью If/Else на основе имени брандмауэра.
- Для каждого брандмауэра вы создадите новый
Log-Type
на основе имени брандмауэра.Log-Type
соответствует имени таблицы в Log Analytics. - Назначьте разрешение на основе вновь созданных пользовательских таблиц.
Это не так прямолинейно, но делает свою работу!
Комментарии:
1. Я думаю, что более простым способом сделать то, что вы говорите, было бы использовать пользовательские журналы, нет? docs.microsoft.com/en-us/azure/azure-monitor/agents/… К сожалению, мне действительно нужно, чтобы журналы были в таблице CommonSecurityLog.
2. Да, в некоторых случаях вы правы. Спасибо за напоминание, которое совершенно вылетело у меня из головы, я должен был упомянуть об этом, но, как правило, когда меня спрашивают об источниках журналов, отличных от виртуальных машин/приложений, я думаю только об API. Мы использовали пользовательский журнал только один раз, но для остальных случаев использования нам приходилось собирать журналы из нестандартных источников. Структура вывода не соответствовала требованиям Log Analytics. Я обновлю свой ответ, чтобы отразить это, но если вы столкнетесь с той же проблемой, что и я, REST API-это вариант для всех.
3. Хорошо, в таком случае, к сожалению, это невозможно сделать, так как Microsoft пока не поддерживает это. Я понимаю, что это может сделать поисковые запросы очень сложными, если вы разделите CommonSecurityLog на несколько таблиц! Извините, я ничем не мог вам помочь!