Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье приведены инструкции по подключению к Security & Compliance PowerShell с помощью модуля Exchange Online PowerShell с многофакторной проверкой подлинности (MFA) или без нее.
Модуль Exchange Online PowerShell использует современную проверку подлинности для подключения к Exchange Online PowerShell и Security & Compliance PowerShell. Дополнительные сведения о модуле PowerShell Exchange Online см. в статье О модуле PowerShell Exchange Online.
Чтобы подключиться к Windows & Compliance PowerShell для автоматизации, см. статью Автоматическая проверка подлинности только в приложениях.
Что нужно знать перед началом работы
Требования к установке и использованию модуля описаны в разделах Необходимые условия для модуля PowerShell Exchange Online и Поддерживаемые операционные системы для модуля PowerShell для Exchange Online.
После подключения управление доступом на основе ролей (RBAC) управляет командлетами и параметрами, к которым у вас есть или нет доступа. Дополнительные сведения см. в разделах "Разрешения" на портале Microsoft Defender и "Разрешения" на портале Microsoft Purview.
Шаг 1. Загрузка модуля PowerShell Exchange Online
Примечание.
Если модуль уже установлен, обычно можно пропустить этот шаг и запустить Connect-IPPSSession без предварительной загрузки модуля вручную.
После установки модуля откройте окно PowerShell и загрузите модуль, выполнив следующую команду:
Import-Module ExchangeOnlineManagement
Шаг 2. Подключение и проверка подлинности
Примечание.
Команды подключения, скорее всего, не будут выполнены, если путь к профилю учетной записи, использованной для подключения, содержит специальные символы PowerShell (например,
$). В качестве обходного решения можно подключиться с помощью другой учетной записи, в пути к профилю которой нет специальных символов.Если вы планируете запускать командлеты обнаружения электронных данных (*-ComplianceSearch или New-ComplianceSearchAction), подключение должно соответствовать следующим требованиям:
Версия 3.9.0 (август 2025 г.) или более поздняя версия модуля Exchange Online PowerShell.
Команда подключения должна включать параметр EnableSearchOnlySession .
Если ваше подключение PowerShell для обеспечения безопасности & соответствия требованиям не соответствует этим требованиям, при попытке запуска командлетов обнаружения электронных данных возникает следующая ошибка:
Please close the current PowerShell session and open a new session using Connect-IPPSSession with the -EnableSearchOnlySession flag. This requires using ExchangeOnlineManagement v3.9.0 or higher.
В команде, которую вам нужно выполнить, используется следующий синтаксис:
Connect-IPPSSession -UserPrincipalName <UPN> [-ConnectionUri <URL>] [-AzureADAuthorizationEndpointUri <URL>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions] [-EnableSearchOnlySession]
Подробные сведения о синтаксисе и параметрах см. в статье Подключение IPPSSession.
<UPN> — это ваша учетная запись в формате имени участника-пользователя (например,
navin@contoso.onmicrosoft.com).Обязательные значения ConnectionUri и AzureADAuthorizationEndpointUri зависят от характера вашей организации Microsoft 365. Общие значения описаны в следующем списке:
-
Microsoft 365 или Microsoft 365 GCC:
-
ConnectionUri: нет. Обязательное значение
https://ps.compliance.protection.outlook.com/powershell-liveid/также является значением по умолчанию, поэтому вам не нужно использовать параметр ConnectionUri в средах Microsoft 365 или Microsoft 365 GCC. -
AzureADAuthorizationEndpointUri: None. Обязательное значение
https://login.microsoftonline.com/organizations, но оно также является значением по умолчанию, поэтому вам не нужно использовать параметр AzureADAuthorizationEndpointUri в средах Microsoft 365 или Microsoft 365 GCC.
-
ConnectionUri: нет. Обязательное значение
-
Microsoft 365 GCC High:
-
ConnectionUri:
https://ps.compliance.protection.office365.us/powershell-liveid/ -
AzureADAuthorizationEndpointUri:
https://login.microsoftonline.us/organizations*
-
ConnectionUri:
-
Министерство обороны Microsoft 365:
-
ConnectionUri:
https://l5.ps.compliance.protection.office365.us/powershell-liveid/ -
AzureADAuthorizationEndpointUri:
https://login.microsoftonline.us/organizations*
-
ConnectionUri:
-
Office 365, предоставляемый 21Vianet:
-
ConnectionUri:
https://ps.compliance.protection.partner.outlook.cn/powershell-liveid -
AzureADAuthorizationEndpointUri:
https://login.chinacloudapi.cn/organizations*
-
ConnectionUri:
* Значение AzureADAuthorizationEndpointUri , заканчивающееся на,
/organizationsразрешает только рабочие или учебные учетные записи. Старое значение URI, заканчивающееся на "/common", по-прежнему работает, но может предложить вам выбрать между личной учетной записью и рабочей или учебной учетной записью. Значение URI рекомендуется использовать/organizationsв корпоративных сценариях, где следует исключить учетные записи потребителей.-
Microsoft 365 или Microsoft 365 GCC:
Если вы находитесь за прокси-сервером, можно использовать параметр PSSessionOption в команде подключения. Сначала выполните следующую команду:
$ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>, где <Значение> равноIEConfig,WinHttpConfigилиAutoDetect. Затем используйте значение$ProxyOptionsпараметра PSSessionOption . Дополнительные сведения см. в статье New-PSSessionOption.В зависимости от характера вашей организации вы можете опустить параметр UserPrincipalName на следующем шаге. Вместо этого введите имя пользователя и пароль или выберите сохраненные учетные данные после выполнения команды Connect-IPPSSession. Если это не сработает, необходимо использовать параметр UserPrincipalName.
Если вы не используете многофакторную проверку подлинности, у вас должна быть возможность применить параметр Credential вместо параметра UserPrincipalName. Сначала запустите команду
$Credential = Get-Credential, введите имя пользователя и пароль, а затем используйте имя переменной для параметра Credential (-Credential $Credential). Если это не сработает, необходимо использовать параметр UserPrincipalName.
Подключение к Windows PowerShell для обеспечения безопасности & соответствия требованиям с помощью интерактивного запроса на вход
Следующие примеры работают в Windows PowerShell 5.1 и PowerShell 7 для учетных записей с MFA или без нее:
В этом примере выполняется подключение к оболочке PowerShell безопасности и соответствия требованиям в организации Microsoft 365 или Microsoft 365 GCC:
Connect-IPPSSession -UserPrincipalName navin@contoso.onmicrosoft.comВ этом примере выполняется подключение к оболочке PowerShell безопасности и соответствия требованиям в организации Microsoft GCC High:
Connect-IPPSSession -UserPrincipalName chris@govt.us -ConnectionUri https://ps.compliance.protection.office365.us/powershell-liveid/ -AzureADAuthorizationEndpointUri https://login.microsoftonline.us/organizationsВ этом примере выполняется подключение к оболочке PowerShell безопасности и соответствия требованиям в организации Microsoft 365 DoD:
Connect-IPPSSession -UserPrincipalName michelle@govt.mil -ConnectionUri https://l5.ps.compliance.protection.office365.us/powershell-liveid/ -AzureADAuthorizationEndpointUri https://login.microsoftonline.us/organizationsВ этом примере выполняется подключение к оболочке PowerShell безопасности и соответствия требованиям в организации Office 365, предоставляемой 21Vianet:
Connect-IPPSSession -UserPrincipalName li@fabrikam.cn -ConnectionUri https://ps.compliance.protection.partner.outlook.cn/powershell-liveid -AzureADAuthorizationEndpointUri https://login.chinacloudapi.cn/organizations
В открывшемся окне входа введите пароль и нажмите "Войти".
Примечание.
В PowerShell 7 по умолчанию используется единый вход (SSO) на основе браузера, поэтому запрос на вход открывается в веб-браузере по умолчанию, а не в отдельном диалоговом окне.
Только MFA: код проверки создается и доставляется на основе варианта ответа, настроенного для вашей учетной записи (например, текстовое сообщение или приложение Microsoft Authenticator на вашем устройстве).
В открывшемся окне проверки введите код проверки и выберите "Проверить".
Подключение к Windows PowerShell для обеспечения безопасности & соответствия требованиям без запроса на вход (автоматические скрипты)
Полные инструкции см. в разделах Проверка подлинности только в приложении для автоматических сценариев в Exchange Online PowerShell и Security & Compliance PowerShell.
Подключение к Security & Compliance PowerShell в организациях клиентов
Для выполнения процедур, описанных в этом разделе, требуется версия модуля 3.0.0 или более поздняя.
В Security & Compliance PowerShell необходимо использовать AzureADAuthorizationEndpointUri с параметром DelegatedOrganization .
Дополнительные сведения об организациях партнеров и клиентов см. в следующих статьях:
- Что такое программа "Поставщик облачных решений" (CSP?).
- Общие сведения о детализированных делегированных привилегиях администратора (GDAP)
В этом примере осуществляется подключение к организациям клиентов в следующих сценариях:
Подключение к организации клиента с помощью учетной записи CSP.
Подключение к организации-клиенту с помощью GDAP.
Подключиться к организации клиента в качестве гостя.
Connect-IPPSSession -UserPrincipalName navin@contoso.onmicrosoft.com -DelegatedOrganization adatum.onmicrosoft.com -AzureADAuthorizationEndpointUri https://login.microsoftonline.com/adatum.onmicrosoft.com
Шаг 3. Отключение после завершения
Не забудьте отключить сеанс после завершения. Если закрыть окно PowerShell, не отключив сеанс, то все доступные сеансы могут быть израсходованы, и вам придется дождаться истечения срока действия сеансов. Чтобы отключить сеанс, выполните следующую команду:
Disconnect-ExchangeOnline
Чтобы автоматически отключиться без запроса подтверждения, выполните следующую команду:
Disconnect-ExchangeOnline -Confirm:$false
Примечание.
Команда отключения, скорее всего, не будет выполнена, если путь к профилю учетной записи, использованной для подключения, содержит специальные символы PowerShell (например, $). В качестве обходного решения можно подключиться с помощью другой учетной записи, в пути к профилю которой нет специальных символов.
Как узнать, что вы успешно подключились?
Командлеты PowerShell безопасности и соответствия требованиям импортируются в локальный сеанс Windows PowerShell и отслеживаются с помощью индикатора выполнения. Если при этом не появляются сообщения об ошибках, то подключение установлено. Чтобы выполнить быструю проверку, запустите командлет PowerShell безопасности и соответствия требованиям, например Get-RetentionCompliancePolicy, и просмотрите результаты.
Если возникают ошибки, просмотрите список возможных причин ниже.
Распространенная проблема — неправильный пароль. Еще раз повторите три описанных выше действия, уделив особое внимание имени пользователя и паролю, которые вы используете.
Учетная запись, используемая для подключения, должна поддерживать PowerShell. Дополнительные сведения см. в статье Включение и отключение доступа к Exchange Online PowerShell.
Необходимо открыть TCP-порт 80 для трафика между локальным компьютером и Microsoft 365. Вполне вероятно, что он уже открыт, но в этом следует убедиться, если в вашей организации действует политика ограниченного доступа к Интернету.
Для подключений на основе REST к PowerShell для обеспечения безопасности & соответствия требованиям требуется модуль PowerShellGet. В зависимости для модуля PowerShellGet требуется модуль PackageManagement. При попытке подключения без установленных обоих модулей возникают ошибки. Например, вы можете увидеть следующую ошибку:
Термин "Update-ModuleManifest" не распознается как имя командлета, функции, файла сценария или работоспособной программы. Проверьте орфографию имени или в случае включения пути проверьте правильность указания пути и повторите попытку.
Дополнительные сведения о требованиях к модулям PowerShellGet и PackageManagement см. в статье PowerShellGet для подключений на основе REST в Windows.
Если IP-адрес клиента изменяется во время выполнения запроса на подключение, подключение может завершиться сбоем. Сбой возникает, если в организации используется пул преобразования исходных сетевых адресов (SNAT) с несколькими IP-адресами. Ошибка подключения выглядит так:
Не удалось отправить запрос удаленной оболочки Windows с идентификатором> ShellId<, так как оболочка не была найдена на сервере. Возможные причины: идентификатор ShellId указан неправильно или оболочки больше нет на сервере. Укажите правильный идентификатор ShellId или создайте новую оболочку и повторите попытку.
Чтобы устранить проблему, выполните одно из следующих действий:
- Используйте пул SNAT, содержащий один IP-адрес.
- Принудительно использовать определенный IP-адрес для подключений к конечной точке PowerShell & безопасности и соответствия требованиям.