Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
365Inspect — Сценарий PowerShell, который автоматизирует оценку безопасности сред Microsoft 365. | Kitploit
Инструменты/GitHubGitHub/soteria-security/365inspect
Оборонительные ИнструментыСканеры уязвимостейАудит конфигурацииТестирование на ПроникновениеБезопасность облачных сред
GitHubsoteria-security/365inspect

365Inspect

Сценарий PowerShell, который автоматизирует оценку безопасности сред Microsoft 365.

Репозиторий
6601141 год назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Сайт





Назначение

Повысить уровень безопасности Microsoft 365, создав PowerShell-скрипт, автоматизирующий оценку безопасности сред Microsoft 365.

Soteria Inspect

Soteria Inspect родился из проекта 365Inspect и является SaaS-решением компании Soteria для оценки безопасности арендатора Microsoft 365, включающим более 200 точек проверки во всем наборе сервисов Microsoft 365.

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

Soteria Inspect для Microsoft 365 доступен напрямую через Soteria или через Azure Marketplace

Смотрите все наши предложения Soteria Inspect для Microsoft 365

Смотрите сравнение возможностей!

365Inspect Community Edition против Soteria Inspect для Microsoft 365

Настройка

365Inspect Community Edition требует административные модули PowerShell для управления Exchange, Microsoft Graph, Microsoft Teams и модуль администрирования SharePoint.

365Inspect теперь совместим с PowerShell Core (6+) и требует операционной системы Microsoft Windows из-за зависимостей от необходимых модулей.

PowerShell-скрипт 365Inspect.ps1 проверяет установленные модули и минимальные версии модулей, необходимые для работы инспекторов.

Если у вас не установлены эти модули, вам будет предложено установить их, и с вашего согласия скрипт попытается выполнить установку. В противном случае вы можете установить их с помощью следующих команд в командной строке PowerShell с правами администратора или следуя инструкциям по ссылкам ниже:

root@kitploit:~
Install-Module -Name ExchangeOnlineManagement -AllowClobber -Force

Install-Module -Name PnP.PowerShell -AllowClobber -Force

Install-Module -Name Microsoft.Graph -AllowClobber -Force

Install-Module -Name MicrosoftTeams -AllowClobber -Force

Установка Exchange Online PowerShell

Установка модуля SharePoint PnP PowerShell

Установка Microsoft Graph SDK

Установка Microsoft Teams

После установки вышеперечисленного загрузите папку с исходным кодом 365Inspect из Github с помощью браузера или с помощью git clone.

Критические изменения

Модуль PnP.PowerShell

С 9 сентября 2024 года PnP.PowerShell требует, чтобы администраторы арендаторов регистрировали собственное приложение для использования с SharePoint/PnP службой. Смотрите следующую документацию PnP.PowerShell для необходимых шагов. Регистрация приложения Entra ID для использования с PnP PowerShell Определение разрешений Аутентификация

ПРИМЕЧАНИЕ: Если вы используете PowerShell 5.1, PnP PowerShell больше не совместим, и все инспекторы SharePoint будут исключены во время выполнения.

Существует команда, которую можно запустить для автоматизации этого шага.```powershell Register-PnPEntraIDAppForInteractiveLogin -ApplicationName "PnP Rocks" -Tenant [yourtenant].onmicrosoft.com -Interactive

root@kitploit:~
__Запомните название или Application/Client ID созданного приложения. Теперь это требуется для аутентификации, и вам будет предложено ввести AppID!__

# Совместимость модулей
В настоящее время модули Microsoft.Graph и Microsoft.Graph.Beta версий 2.23.0 несовместимы с ExchangeOnlineManagement версии 3.5.1
Следующие версии совместимы:
- Microsoft.Graph version 2.21.1
- Microsoft.Graph.Beta version 2.21.1
- ExchangeOnlineManagement version 3.5.0

Для установки совместимых версий можно использовать следующие команды:```powershell
Install-Module -Name Microsoft.Graph -Scope CurrentUser -RequiredVersion 2.21.1 -AllowClobber -Force
Install-Module -Name Microsoft.Graph.Beta -Scope CurrentUser -RequiredVersion 2.21.1 -AllowClobber -Force
Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser -RequiredVersion 3.5.0 -AllowClobber -Force

Поскольку вы будете запускать 365Inspect с правами администратора, вам следует разместить его в логичном месте и убедиться, что содержимое папки доступно для чтения и записи только административному пользователю. Это особенно важно, если вы планируете установить 365Inspect в место, где он будет часто выполняться или использоваться как часть автоматизированного процесса. ПРИМЕЧАНИЕ: Для работы 365Inspect не требуется запускать его в окне PowerShell с правами администратора.

Использование

Чтобы запустить 365Inspect, откройте консоль PowerShell и перейдите в папку, в которую вы загрузили 365Inspect:

root@kitploit:~
cd 365Inspect

Вы будете взаимодействовать с 365Inspect, выполняя главный файл сценария 365Inspect.ps1 из командной строки PowerShell.

Все, что требуется 365Inspect для проверки вашего клиента M365 — это доступ через учетную запись M365 с соответствующими разрешениями, поэтому большинство параметров командной строки относятся к оцениваемой организации и методу аутентификации.

Выполнение 365Inspect выглядит следующим образом:

root@kitploit:~
.\365Inspect.ps1 -OutPath <value> -UserPrincipalName [email protected] -Auth <MFA|DEVICE|ALREADY_AUTHED|APP> -pnpPowerShellApplicationId <Your Pnp PowerShell Application/Client ID>
Примеры выполнения

Выполнение сценария

Например, для входа с вводом учетных данных в браузере с поддержкой MFA:

root@kitploit:~
    .\365Inspect.ps1 -OutPath ..\365_report -UserPrincipalName [email protected] -Auth MFA

Для входа в государственное или другое национальное облачное развертывание (Китай, Германия и т.д.) необходимо указать параметр -Environment следующим образом:

root@kitploit:~
    .\365Inspect.ps1 -OutPath ..\365_report -UserPrincipalName [email protected] -Auth MFA -Environment USGovGCCHigh

Допустимые аргументы для -Environment:

  • Default — конечные точки авторизации клиента Microsoft 365 по умолчанию. Это аргумент по умолчанию, если параметр Environment не указан.
  • USGovGCCHigh — клиенты GCC High правительства США
  • USGovDoD — клиенты DoD правительства США
  • Germany — клиенты, размещенные в Microsoft 365 Azure Germany
  • China — клиенты, размещенные в Microsoft 365 China/Vianet

Аутентификация приложения может быть выполнена при запуске сценария со следующими параметрами:

root@kitploit:~
    .\365Inspect.ps1 -OutPath ..\365_report -UserPrincipalName [email protected] -Auth APP

Для входа в государственное или другое национальное облачное развертывание (Китай, Германия и т.д.) необходимо указать параметр -Environment следующим образом:

По мере выполнения 365Inspect будет постоянно выводить обновления состояния, указывающие, какая задача проверки выполняется.

365Inspect может выполняться некоторое время. Это время зависит от размера и сложности тестируемой среды. Например, некоторые задачи проверки включают сканирование конфигурации учетных записей всех пользователей. Это может произойти почти мгновенно для организации с 50 пользователями или может занять целые минуты (!) для организации с 10000 пользователями.

Вывод

365Inspect создает каталог, указанный в параметре out_path. Этот каталог является результатом всей проверки 365Inspect. Он содержит четыре важных элемента:

  • Report.html: графический отчет, в котором описываются проблемы безопасности M365, выявленные 365Inspect, перечисляются неправильно настроенные объекты M365 и даются рекомендации по исправлению.
  • Различные текстовые файлы с именем [Inspector-Name]: это необработанные выходные данные модулей инспекторов, содержащие список (по одному элементу в строке) неправильно настроенных объектов M365, в которых обнаружен описанный недостаток безопасности. Например, если модуль Inspect-FictionalMFASettings обнаружит всех пользователей, у которых не настроена MFA, файл "Inspect-FictionalMFASettings" в ZIP-архиве отчета будет содержать по одному пользователю на строку, у которого не настроена MFA. Эта информация выгружается в файл только в тех случаях, когда обнаружено более 15 затронутых объектов. Если обнаружено менее 15 затронутых объектов, они перечисляются непосредственно в основном теле HTML-отчета.
  • Report.zip: заархивированная версия всего этого каталога для удобного распространения результатов в случаях, когда некоторые модули инспекторов сгенерировали большое количество находок.
  • Каталог Log: 365Inspect регистрирует любые ошибки, возникшие во время выполнения сценариев, в файл журнала с отметкой времени, находящийся в каталоге Log.

Вывод CSV

Из-за характера некоторых возвращаемых элементов отчет CSV разделяется символом каретки (^). Рекомендуется открывать отчет CSV в текстовом редакторе, а не в Excel, так как Excel по умолчанию использует запятую (,) в качестве разделителя и отобразит отчет неправильно. После открытия в текстовом редакторе данные можно вставить в Excel.

Скоро появится!

  • Расскажите нам!

Журнал изменений

  • Добавлена поддержка сниженных требований к ролям для аутентификации приложения — субъектам-службам теперь может быть назначена роль глобального читателя за счет выполнения некоторых инспекторов.
  • Сужена область разрешений приложения — DelegatedPermissionGrant.ReadWrite.All заменено на DelegatedPermissionGrant.Read.All, разрешение API, которое ранее было недоступно.
Более старые изменения

Более старые изменения

  • Поддержка аутентификации устройства

  • Поддержка национальных облачных развертываний

  • 365Inspect теперь поддерживает аутентификацию приложения

  • Формат HTML-отчета 365Inspect изменился

    • Добавлены новые визуальные индикаторы риска в виде двух диаграмм Диаграммы рисков
    • Команды PowerShell отделены от шагов по исправлению и добавлена подсветка синтаксиса Команды PowerShell
    • Список выполненных инспекторов перемещен в приложение в конце отчета Приложение

Необходимые привилегии

365Inspect не сможет работать должным образом, если учетная запись M365, с которой вы проходите аутентификацию, не имеет соответствующих привилегий. 365Inspect требует, как минимум, следующего:

  • Глобальный администратор
  • Администратор SharePoint

Мы понимаем, что это чрезвычайно разрешительные роли, но, к сожалению, из-за использования Microsoft Graph, Microsoft ограничивает нас в использовании менее привилегированных ролей. Роли администратора приложений и облачных приложений (используемые для предоставления делегированных разрешений и разрешений приложений) не могут предоставлять разрешения для модулей PowerShell Microsoft Graph или Azure AD. Microsoft Docs — Администратор приложений

Если 365Inspect выполняется с использованием параметра аутентификации приложения, необходимо предоставить дополнительные роли, чтобы приложение могло выполнять все выполняемые задачи. См. Требования к аутентификации приложения

Требования к аутентификации приложения

Перед использованием 365Inspect должны быть выполнены все прочие необходимые компоненты.

Предварительная подготовка

Для наиболее эффективного использования времени рекомендуется выполнять необходимые функции в следующем порядке:

  1. Подготовьте клиентскую машину
    1. Клиентская машина ДОЛЖНА работать под управлением ОС Microsoft Windows.
    2. Установите необходимые модули PowerShell, перечисленные в разделе Настройка выше.
    3. Убедитесь, что установлены соответствующие средства контроля доступа.
  2. Создайте необходимый сертификат
    1. Создайте самозаверяющий сертификат для аутентификации приложения Azure.
  3. Создайте приложение Azure
    1. Создайте субъект-службу.
    2. Назначьте необходимые права приложению Разрешения API.
    3. Назначьте необходимые роли субъекту-службе приложения.
      1. Глобальный администратор или глобальный читатель
      2. Администратор Exchange
      3. Администратор Teams
      4. Администратор SharePoint
    4. Загрузите сертификат.
    5. Задокументируйте необходимую информацию.
  4. Получите инструмент 365Inspect
    1. Загрузите и распакуйте инструмент в нужное место на клиенте.

Смотрите следующие ссылки:

  • Учебник: Регистрация приложения в Microsoft Entra ID
  • Аутентификация только для приложения для автоматических сценариев в Exchange Online PowerShell и Security & Compliance PowerShell
  • Объекты приложения и субъекта-службы в Microsoft Entra ID

Требуемые разрешения

Развернуть

Требуемые разрешения

  • User.Read.All
  • Calendars.Read
  • Mail.Read
  • Contacts.Read
  • TeamMember.Read.All
  • Place.Read.All
  • Chat.UpdatePolicyViolation.All
  • Policy.Read.ConditionalAccess
  • AppCatalog.Read.All
  • TeamsAppInstallation.ReadForUser.All
  • eDiscovery.Read.All
  • UserShiftPreferences.Read.All
  • CustomSecAttributeDefinition.Read.All
  • AgreementAcceptance.Read.All
  • ExternalConnection.Read.All
  • EduRoster.Read.All
  • ServicePrincipalEndpoint.Read.All
  • CloudPC.Read.All
  • DeviceManagementManagedDevices.Read.All
  • OnlineMeetings.Read.All
  • Device.Read.All
  • TeamsTab.Read.All
  • DelegatedAdminRelationship.Read.All
  • UserAuthenticationMethod.Read.All
  • TeamsActivity.Read.All
  • Printer.Read.All
  • OrgContact.Read.All
  • TeamsAppInstallation.ReadForChat.All
  • Policy.Read.PermissionGrant
  • OnlineMeetingArtifact.Read.All
  • SharePointTenantSettings.Read.All
  • ChannelSettings.Read.All
  • SecurityEvents.Read.All
  • DelegatedPermissionGrant.Read.All
  • OnlineMeetingRecording.Read.All
  • IdentityRiskyServicePrincipal.Read.All
  • CrossTenantUserProfileSharing.Read.All
  • Calendars.Read
  • Mail.ReadBasic.All
  • PrivilegedAccess.Read.AzureAD
  • RoleManagement.Read.Directory
  • Channel.ReadBasic.All
  • People.Read.All
  • SecurityAlert.Read.All
  • Group.Read.All
  • AdministrativeUnit.Read.All
  • MailboxSettings.Read
  • CrossTenantInformation.ReadBasic.All
  • EduAdministration.Read.All
  • Sites.Read.All
  • PrintJob.Read.All
  • DeviceManagementServiceConfig.Read.All
  • ServiceMessage.Read.All
  • PrintSettings.Read.All
  • DirectoryRecommendations.Read.All
  • Notes.Read.All
  • EntitlementManagement.Read.All
  • CallRecords.Read.All
  • IdentityUserFlow.Read.All

Разработка модулей Inspector

365Inspect спроектирован так, чтобы его было легко расширять, в надежде, что это позволит отдельным лицам и организациям использовать свои собственные модули 365Inspect внутри компании или публиковать эти модули для сообщества M365.

Все модули инспекторов 365Inspect хранятся в папке .\inspectors.

Создать модуль инспектора просто. Инспекторы имеют два файла:

  • ModuleName.ps1: исходный код PowerShell модуля инспектора. Должен возвращать список всех объектов M365, затронутых конкретной проблемой, представленных в виде строк.
  • ModuleName.json: метаданные о самом инспекторе. Например, название находки, описание, информация об исправлении и ссылки.

Шаблоны включены в папку Templates. Просто добавьте свой код и значения в соответствующие места. Имена файлов PowerShell и JSON должны быть идентичны, чтобы 365Inspect распознал, что они принадлежат друг другу. Встроенный набор модулей 365Inspect содержит множество примеров, но мы приведем и здесь.

Пример файла .ps1, BypassingSafeAttachments.ps1:```powershell # Define a function that we will later invoke. # 365Inspect's built-in modules all follow this pattern. function Inspect-BypassingSafeAttachments { # Query some element of the M365 environment to inspect. Note that we did not have to authenticate to Exchange # to fetch these transport rules within this module; assume main 365Inspect harness has logged us in already. $safe_attachment_bypass_rules = (Get-TransportRule | Where { $_.SetHeaderName -eq "X-MS-Exchange-Organization-SkipSafeAttachmentProcessing" }).Identity
root@kitploit:~
# If some of the parsed M365 objects were found to have the security flaw this module is inspecting for,
# return a list of strings representing those objects. This is what will end up as the "Affected Objects"
# field in the report.
If ($safe_attachment_bypass_rules.Count -ne 0) {
	return $safe_attachment_bypass_rules
}

# If none of the parsed M365 objects were found to have the security flaw this module is inspecting for,
# returning $null indicates to 365Inspect that there were no findings for this module.
return $null

}

Return the results of invoking the inspector function.

return Inspect-BypassingSafeAttachments

root@kitploit:~
</details>

<details>
<summary>Пример .json файла, BypassingSafeAttachments.json:</summary>```json
{
    "FindingName": "Do Not Bypass the Safe Attachments Filter",
    "Description": "In Exchange, it is possible to create mail transport rules that bypass the Safe Attachments detection capability. The rules listed above bypass the Safe Attachments capability. Consider reviewing these rules, as bypassing the Safe Attachments capability even for a subset of senders could be considered insecure depending on the context or may be an indicator of compromise.",
    "Remediation": "Navigate to the Mail Flow &rarr; Rules screen in the Exchange Admin Center. Look for the offending rules and begin the process of assessing who created them and whether they are necessary to the continued function of the organization. If they are not, remove the rules.",
    "DefaultValue": "None",
    "ExpectedValue": "None",
    "Impact": "Critical",
    "AffectedObjects": "",
    "Service": "Exchange",  // Valid values are Exchange, SharePoint, Teams, Intune, AzureAD, SecurityandCompliance, Tenant //
    "PowerShell": "", // Any PowerShell remediation command examples should be placed here //
    "References": [
        {
            "Url": "https://docs.microsoft.com/en-us/exchange/security-and-compliance/mail-flow-rules/manage-mail-flow-rules",
            "Text": "Manage Mail Flow Rules in Exchange Online"
        },
        {
            "Url": "https://www.undocumented-features.com/2018/05/10/atp-safe-attachments-safe-links-and-anti-phishing-policies-or-all-the-policies-you-can-shake-a-stick-at/#Bypass_Safe_Attachments_Processing",
            "Text": "Undocumented Features: Safe Attachments, Safe Links, and Anti-Phishing Policies"
        }
    ]
}

Как только вы поместите эти два файла в папку .\inspectors, они будут считаться частью модульного реестра 365Inspect и запустятся при следующем выполнении 365Inspect.

Вы только что создали модуль Inspector BypassingSafeAttachments. Вот и всё!

365Inspect выдаст довольно громкую и уродливую ошибку, если что-то в вашем модуле не работает или не соответствует соглашениям 365Inspect, поэтому следите за выводом командной строки.

Участие в разработке

Мы приветствуем участие сообщества и вклад! Пожалуйста, ознакомьтесь с нашими Рекомендациями по участию

О безопасности

365Inspect — это сценарий-оболочка, который запускает другие модули-инспекторы, хранящиеся в папке .\inspectors. Как и в случае с любым другим сценарием, выполняемым с повышенными привилегиями, следует соблюдать определенные правила гигиены безопасности:

  • Ни один недоверенный пользователь не должен иметь права записи в папку/файлы 365Inspect, так как такой пользователь может перезаписать скрипты или шаблоны и побудить вас выполнить вредоносный код.
  • Ни один модуль не должен помещаться в .\inspectors, если вы не доверяете источнику этого модуля.

О Soteria

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

Скачать инструмент
root@kitploit:~
    .\365Inspect.ps1 -OutPath ..\365_report -UserPrincipalName [email protected] -Auth APP -Environment USGovGCCHigh

Допустимые аргументы для -Environment:

  • Default — конечные точки авторизации клиента Microsoft 365 по умолчанию. Это аргумент по умолчанию, если параметр Environment не указан.
  • USGovGCCHigh — клиенты GCC High правительства США
  • USGovDoD — клиенты DoD правительства США
  • Germany — клиенты, размещенные в Microsoft 365 Azure Germany
  • China — клиенты, размещенные в Microsoft 365 China/Vianet

ПРИМЕЧАНИЕ: Для выполнения 365Inspect с аутентификацией приложения есть предварительные требования. Перейти к требованиям аутентификации приложения

365Inspect теперь поддерживает вывод отчетов в форматах HTML (по умолчанию), CSV и XML.

Например, отчеты CSV можно создать, вызвав параметр -ReportType:

root@kitploit:~
    .\365Inspect.ps1 -OutPath ..\365_report -UserPrincipalName [email protected] -Auth MFA -ReportType CSV

365Inspect можно запускать только с указанными модулями Inspector или, наоборот, исключая указанные модули.

Например, для входа с вводом учетных данных в браузере с поддержкой MFA:

root@kitploit:~
    .\365Inspect.ps1 -OutPath ..\365_report -UserPrincipalName [email protected] -Auth MFA -SelectedInspectors inspector1, inspector2

или

root@kitploit:~
    .\365Inspect.ps1 -OutPath ..\365_report -Auth MFA -ExcludedInspectors inspector1, inspector2, inspector3

Чтобы более подробно разобрать параметры:

  • OutPath — путь к папке, в которой будет размещен отчет, созданный 365Inspect.

    • Обязательный? Да
  • Auth — это селектор, который должен быть одним из буквальных значений «MFA» или «ALREADY_AUTHED».

    • Auth управляет тем, как 365Inspect будет аутентифицироваться во всех службах Microsoft 365.
    Опции
    • Auth MFA вызовет графическое всплывающее окно, в котором можно ввести учетные данные и даже ввести код MFA для учетных записей с поддержкой MFA.
    • Auth ALREADY_AUTHED указывает 365Inspect не выполнять аутентификацию перед сканированием. Это может быть предпочтительнее, если вы запускаете 365Inspect из приглашения PowerShell, где уже есть действительные сеансы для всех описанных служб, например, если вы уже выполнили 365Inspect.
    • Auth APP указывает 365Inspect запросить информацию о субъекте-службе приложения Microsoft Entra ID. Требуемые переменные параметров:
      • AppId — идентификатор приложения зарегистрированного приложения
      • Certificate Thumbprint — отпечаток созданного самозаверяющего сертификата
      • Domain — почтовый домен ([email protected] или company.com) или домен клиента (company.onmicrosoft.com) сканируемого клиента.
    * Обязательный? Да
  • SelectedInspectors — имя или имена инспекторов, которые вы хотите запустить с 365Inspect. Если выбрано несколько инспекторов, они должны быть разделены запятыми. Будут запущены только указанные инспекторы.

    • Обязательный? Нет
  • ExcludedInspectors — имя или имена инспекторов, которые вы хотите исключить из запуска с 365Inspect. Если выбрано несколько инспекторов, они должны быть разделены запятыми. Будут запущены все модули, кроме включенных.

    • Обязательный? Нет
  • UserPrincipalName — UserPrincipalName оценщика, это включено для уменьшения количества раз, когда вам нужно вводить учетные данные в поддерживаемых модулях.

    • Обязательный? Да
  • ReportType — формат вывода создаваемого отчета. Поддерживаемые значения: HTML (по умолчанию), CSV и XML.

    • Обязательный? Нет
  • Environment — укажите экземпляр Azure Cloud для подключения к нестандартным/потребительским клиентам Microsoft 365.

    • Обязательный? Нет

При выполнении 365Inspect с параметром -Auth MFA могут появиться несколько графических запросов на вход, в которые необходимо последовательно войти. Это нормальное поведение, поскольку Exchange, SharePoint и т.д. имеют отдельные административные модули, и для каждого требуется отдельный сеанс входа. Если вы просто войдете в систему необходимое количество раз, 365Inspect должен начать выполнение. Это не весело, и мы ищем обходной путь, но, тем не менее, мы считаем, что результаты стоят минуты, потраченной на просмотр кодов MFA.

  • ChatMessage.Read.All
  • Directory.Read.All
  • ConsentRequest.Read.All
  • RoleManagement.Read.All
  • CallRecord*PstnCalls.Read.All
  • PrivilegedAccess.Read.AzureResources
  • User.Read.All
  • Domain.Read.All
  • EduAssignments.ReadBasic.All
  • EduRoster.ReadBasic.All
  • Agreement.Read.All
  • OnlineMeetingTranscript.Read.All
  • ChannelMember.Read.All
  • Schedule.Read.All
  • SecurityIncident.Read.All
  • GroupMember.Read.All
  • DeviceManagementRBAC.Read.All
  • RoleManagement.Read.CloudPC
  • Files.Read.All
  • CustomSecAttributeAssignment.Read.All
  • SearchConfiguration.Read.All
  • DeviceManagementConfiguration.Read.All
  • Team.ReadBasic.All
  • APIConnectors.Read.All
  • Mail.Read
  • Chat.Read.All
  • ExternalItem.Read.All
  • ChannelMessage.Read.All
  • EduAssignments.Read.All
  • SecurityActions.Read.All
  • ThreatAssessment.Read.All
  • IdentityProvider.Read.All
  • TeamSettings.Read.All
  • IdentityRiskyUser.Read.All
  • AccessReview.Read.All
  • LicenseAssignment.ReadWrite.All
  • TermStore.Read.All
  • TeamworkTag.Read.All
  • PrivilegedAccess.Read.AzureADGroup
  • InformationProtectionPolicy.Read.All
  • Organization.Read.All
  • Contacts.Read
  • IdentityRiskEvent.Read.All
  • Mail.ReadBasic
  • AuditLog.Read.All
  • Policy.Read.All
  • Policy.ReadWrite.CrossTenantAccess
  • Member.Read.Hidden
  • Chat.ReadBasic.All
  • Application.Read.All
  • ProgramControl.Read.All
  • ServiceHealth.Read.All
  • ChatMember.Read.All
  • DeviceManagementApps.Read.All
  • ThreatIndicators.Read.All
  • TeamsAppInstallation.ReadForTeam.All
  • ShortNotes.Read.All
  • Reports.Read.All
  • PrintJob.ReadBasic.All
  • TrustFrameworkKeySet.Read.All
  • ThreatHunting.Read.All
  • TeamworkDevice.Read.All
  • Synchronization.Read.All
  • AuthenticationContext.Read.All
  • CustomAuthenticationExtension.Read.All
  • ThreatSubmission.Read.All
  • LifecycleWorkflows.Read.All
  • ReportSettings.Read.All
  • RecordsManagement.Read.All
  • RoleManagementAlert.Read.Directory