M365Con 2027 – безкоштовна онлайн-конференція · 11–22 Jan 2027 · 120 sessions→ m365con.net

Блог · Mirko Peters

Пошук прогалин у відповідності вимогам M365 за допомогою Microsoft Graph

By ·

Раді бачити вас знову у нашому подкасті та супровідному технічному блозі!

Automatically translated with AI from the original post. Read the English original

▶ BLOGUncovering M365Compliance Blindspots…M365.FM
Titelbild: Uncovering M365 Compliance Blindspots with Microsoft Graph

Якщо ви колись довіряли стандартній панелі відповідності Microsoft 365 і вважали, що все враховано повністю, ви можете почувати себе в безпеці лише удавано. Стандартні панелі відповідності призначені для узагальнених звітів, а не для абсолютно точної картини. Критичні сигнали, зокрема спрацьовування захисту від втрати даних (DLP), дії eDiscovery та базові сповіщення безпеки, часто розташовані за кінцевими точками Microsoft Graph, для доступу до яких потрібні окремі дозволи, розширені параметри запитів і коректне об'єднання даних. У цьому детальному розборі ми з'ясуємо, чому у ваших вбудованих звітах бракує важливої інформації, розберемо точні кінцеві точки Graph, які потрібно опитувати, і покажемо, як передати ці сирі докази безпосередньо в Microsoft Purview для зрозумілої та обґрунтованої звітності. Щоб послухати наше повне обговорення цієї теми, обов'язково перегляньте пов'язаний епізод подкасту: Find Missing Microsoft 365 Compliance Data with Graph.

Огляд

Стандартні панелі відповідності є зведеннями, а не істиною. Критичні сигнали (спрацьовування DLP, дії eDiscovery, сповіщення безпеки) часто розташовані за кінцевими точками Graph з окремими дозволами. Ми описуємо точні API, області доступу та шаблони скриптів для отримання доказів у повному обсязі та їх централізації в Purview для чіткої та обґрунтованої звітності.

Кому це допоможе

  • Власникам питань відповідності, юридичних питань і ризиків, яким потрібні докази, готові до аудиту

  • Адміністраторам M365 і Entra, які створюють звітність та автоматизацію

  • Командам безпеки, які співставляють телеметрію DLP, eDiscovery та сповіщень

Прогалини (чому стандартні панелі їх пропускають)

  • Агрегація й затримка: зведення в інтерфейсі опускають вкладені деталі інцидентів і нещодавню активність

  • Прогалини в охопленні: співпадіння eDiscovery та DLP можуть бути поза стандартними експортами

  • Розділені дозволи: кінцеві точки /security і /compliance потребують різних областей доступу

  • Відсутність зв'язків: панелі рідко співставляють інциденти з користувачами, кастодianами та кроками справ

Найцінніші кінцеві точки Graph (список для копіювання)

  • Сповіщення безпеки (широке охоплення)

    • Кінцева точка: /security/alerts або /security/alerts_v2

    • Дозволи застосунку (приклади): SecurityEvents.Read.All (або Alerts.Read.All у новіших моделях)

    • Використання: хронологія сповіщень, серйозність, статус, призначення

  • Політики та активність DLP (витік даних)

    • Кінцеві точки (залежно від доступності в клієнті):

      • /security/dataLossPreventionPolicies (інвентаризація політик)

      • /security/dlpIncidents або розширені кінцеві точки інцидентів DLP у просторі імен security (залежить від клієнта)

    • Дозволи застосунку: SecurityEvents.Read.All (та/або окремі дозволи читання DLP, якщо доступні)

    • Використання: співпадіння, розташування (Exchange/SharePoint/Teams), результат обробки

  • eDiscovery (справи та дії)

    • /compliance/ediscovery/cases

    • Дочірні шляхи: /custodians, /searches, /reviewSets, /noncustodialDataSources, /operations

    • Дозволи застосунку: eDiscovery.Read.All (і запис, якщо ви керуєте справами)

    • Використання: статус справи, утримання, кастодіани, експорти, дії рецензентів

  • Аудит і контекст входу (додаткові докази)

    • /auditLogs/directoryAudits, /auditLogs/signIns

    • Дозволи застосунку: AuditLog.Read.All, Directory.Read.All

    • Використання: хто, що і коли змінив, контекст сесії

Порada: багато корисних навантажень відповідності мають глибоку вкладеність, тож плануйте використовувати $expand, переходити сторінками через @odata.nextLink і поєднувати з /users/{id} для відображуваних імен і підрозділів.

Автентифікація та дозволи (без зайвих труднощів)

  • Використовуйте дозволи застосунку (службовий принципал) для автоматизованих завдань без нагляду

  • Реєструйте окремі застосунки для безпеки та для основного Graph, якщо організація вимагає розділення привілеїв

  • Надавайте згоду лише на мінімально необхідні області доступу; зберігайте секрети та сертифікати в Key Vault

  • Реалізуйте експоненційну затримку повторів для 429/503 і записуйте x-ms-request-id у журнали

Шаблони скриптів (PowerShell або Python)

  • Вибір і розгортання: запитуйте лише потрібні поля, $select=…, $expand=… для вкладених сутностей

  • Фільтрація та обмеження за часом: $filter=createdDateTime ge {ISO8601} для дельта-запитів

  • Пагінація: обробляйте @odata.nextLink у циклі; ніколи не припускайте, що результати вміщуються на одній сторінці

  • Нормалізація: одразу зіставляйте ідентифікатори користувачів і об'єктів з іменами та підрозділами, щоб результати були читабельними

  • Об'єднання для контексту: доповнюйте інциденти метаданими користувача, сайту, команди або справи перед експортом

Інтеграція з Purview (перетворення даних на рішення)

  1. Стандартизований вивід: CSV/JSON з єдиними назвами полів (tenant, incidentId, workload, userId, userUPN, severity, status, created, lastAction, caseId)

  2. Завантаження: розміщуйте файли в захищеному сховищі, яке може читати Purview (наприклад, ADLS Gen2)

  3. Теги та мітки: застосовуйте мітки конфіденційності або власні теги (наприклад, «DLP-PII-High») для маршрутизації

  4. Панелі керування: Purview (або Power BI поверх даних Purview) для трендів, власників і аналізу простроченості SLA

  5. Автоматизація: правила сповіщення власників справ про повторні випадки та ескалації; щотижневі PDF-дайджести

Пілот на 30 хвилин (покроково)

  • 0–10 хв: реєстрація застосунку + SecurityEvents.Read.All / eDiscovery.Read.All; створіть секрет або сертифікат

  • 10–20 хв: напишіть скрипт для однієї кінцевої точки (сповіщення або справи) з пагінацією та $filter за останні 7 днів

  • 20–30 хв: доповніть даними з /users, експортуйте CSV, перемістіть до шляху ADLS і побудуйте базовий графік

KPI, які демонструють цінність

  • % інцидентів із заповненими власником і результатом розгляду

  • Середній час від інциденту до справи (або до перевіряючого)

  • Облікові записи та локації повторних порушників за 30 днів

  • Різниця з кількістю в стандартній панелі керування (скорочення прогалин)

  • Тривалість циклу аудиту (заощаджені години на підготовку доказів)

Типові помилки (і як їх виправити)

  • Порожні результати → неправильні області дозволів або використання делегованих дозволів там, де потрібні Application

  • Неповні деталі → не використано $expand або вкладені колекції не розібрано

  • Часткові дані → немає пагінації; збережено лише першу сторінку

  • Невідповідності імен → немає доповнення через /users або дані HR

  • Застарілі панелі → немає запланованих запусків; додайте завдання та сповіщення про збої

Швидкі результати цього тижня

  • Отримайте останні 7 днів з /security/alerts і порівняйте кількість з порталом

  • Експортуйте відкриті справи eDiscovery та відповідальних осіб; передайте юристам для перевірки

  • Проведіть перевірку інцидентів DLP, позначте повторні та відкрийте подальші дії в Purview

  • Налаштуйте щотижневий пакет доказів (CSV + PDF) на поштову скриньку відділу відповідності

Поширені запитання

  • Чи потрібно бути розробником? Ні: достатньо PowerShell або коротких скриптів на Python.

  • Навіщо дозволи застосунку? Більшість кінцевих точок /security та /compliance вимагають безголового доступу з високим рівнем довіри.

  • Чи можна залишитися в PowerShell? Так: використовуйте Microsoft Graph PowerShell SDK і обробляйте $top, $filter, $expand та пагінацію.

  • Чи обов'язковий Purview? Формально ні, але він перетворює сирий JSON на перевірювані робочі процеси та панелі керування.

Висновок

Панелі керування підсумовують, а Graph показує всю картину. Оберіть потрібні кінцеві точки, налаштуйте автентифікацію, використовуйте пагінацію та розгортання, а потім централізуйте дані в Purview. Ви перейдете від формальної відповідності до доведеної видимості в режимі реального часу без виснажливих ручних експортів. Щоб глибше розібрати ці сліпі зони та почути практичні поради експертів, обов'язково послухайте наш окремий епізод подкасту Find Missing Microsoft 365 Compliance Data with Graph. Продовжуйте вдосконалювати свої скрипти, захищайте дозволи застосунків і починайте показувати дані, які ваші панелі досі приховували!

Entities in this article

eDiscovery Compliance Dashboards Microsoft Graph Microsoft Purview Data loss prevention (DLP) PowerShell Microsoft 365 Exchange Online JSON

Related articles

RSS