Подключение к клиентам Exchange Online с помощью удаленного сеанса Windows PowerShell для партнеров службы разрешений делегированного доступа (DAP)Connect to Exchange Online tenants with remote Windows PowerShell for Delegated Access Permissions (DAP) partners

Сводка. Использование удаленного сеанса PowerShell для подключения к Exchange Online с помощью значения DelegatedOrg.Summary: Use remote Windows PowerShell to connect to Exchange Online by using the DelegatedOrg parameter.

Важно!

Процедуры, описанные в этой статье, предназначены только для партнеров службы разрешений делегированного доступа (DAP). Если вы не являетесь партнером DAP, не используйте эти процедуры.The procedures in this topic are only for Delegated Access Permission (DAP) partners. If you aren't a DAP partner, don't use the procedures in this topic.

Партнеры DAP являются партнерами синдикации и поставщиков облачных решений (CSP). Они часто являются поставщиками сети или телекоммуникационных услуг в других компаниях. Они включают подписки в услуги для своих клиентов. Они владеют партнерскими правами, что автоматически предоставляет разрешение на администрирование от имени (AOBO) их клиентам Office 365, так что они имеют право на администрирование всех своих клиентов и создание отчетов о них.DAP partners are Syndication and Cloud Solution Providers (CSP) partners. They are frequently network or telecom providers to other companies. They bundle subscriptions into their service offerings to their customers. They own a partner tenancy that is automatically granted Administer On Behalf Of (AOBO) permissions to their Office 365customer tenancies so they can administer and report on all of their customer tenancies.

Партнеры DAP могут использовать среду Exchange Online PowerShell, чтобы управлять настройками Exchange Online и получать отчеты Office 365 с командной строки. С помощью Windows PowerShell на локальном компьютере можно создать удаленный сеанс PowerShell с Exchange Online. Эта простая трехэтапная процедура предусматривает ввод учетных данных, настройку необходимых параметров подключения, а также импорт командлетов Exchange Online в локальный сеанс Windows PowerShell для дальнейшего использования.Remote PowerShell allows you to manage your Exchange Online settings from the command line. You use Windows PowerShell on your local computer to create a remote Shell session to Exchange Online. It’s a simple three-step process where you enter your Exchange Online credentials, provide the required connection settings, and then import the Exchange Online cmdlets into your local Windows PowerShell session so that you can use them.

Примечание

Партнеры DAP не могут использовать процедуры, описанные в статье Подключение к Exchange Online PowerShell с помощью многофакторной проверки подлинности, чтобы подключаться к клиентским организациям пользователей в Exchange Online PowerShell. Многофакторная проверка подлинности и удаленный модуль PowerShell в Exchange Online не поддерживают делегированную проверку подлинности.DAP partners can't use the procedures in Connect to Exchange Online PowerShell using multi-factor authentication to connect to their customer tenant organizations in Exchange Online PowerShell. MFA and the Exchange Online Remote PowerShell Module don't work with delegated authentication.

Что нужно знать перед началом работыWhat do you need to know before you begin?

  • Предполагаемое время для завершения: 5 минут.Estimated time to complete: 5 minutes

  • Ниже приведены версии Windows, которые можно использовать.You can use the following versions of Windows:

  • Чтобы запускать сценарии, необходимо настроить Windows PowerShell. По умолчанию это приложение не настроено. При попытке подключения появится указанная ниже ошибка.Windows_PowerShell needs to be configured to run scripts, and by default, it isn't. You get the following error when you try to connect:

    Files cannot be loaded because running scripts is disabled on this system. Provide a valid certificate with which to sign the files.

    Чтобы требовать подпись надежного издателя для всех сценариев PowerShell, загружаемых из Интернета, выполните следующую команду в окне Windows PowerShell с повышенными привилегиями (окно Windows PowerShell, которое открывается с помощью параметра Запуск от имени администратора).To require all PowerShell scripts that you download from the internet are signed by a trusted publisher, run the following command in an elevated Windows PowerShell window (a Windows PowerShell window you open by selecting Run as administrator):

    Set-ExecutionPolicy RemoteSigned
    

    Достаточно настроить этот параметр один раз, и вам не придется делать это при каждом подключении.You need to configure this setting only once on your computer, not every time you connect.

  • Сведения о сочетаниях клавиш, которые можно использовать в процедурах из этой статьи, см. в статье Сочетания клавиш в Центре администрирования Exchange.For information about keyboard shortcuts that might apply to the procedures in this topic, see Keyboard shortcuts in the Exchange admin center.

Подключение к Exchange Online для организаций пользователейConnect to Exchange Online for customer organizations

  1. На локальном компьютере откройте Windows PowerShell и запустите следующую команду.On your local computer, open Windows PowerShell and run the following command.

    $UserCredential = Get-Credential
    

    В диалоговом окне Запрос учетных данных Windows PowerShell введите имя пользователя и пароль администратора DAP, а затем нажмите кнопку ОК.In the Windows PowerShell Credential Request dialog box, enter your DAP administrator user name and password, and then click OK.

  2. Замените <доменное имя клиента пользователя> именем клиентского домена, к которому нужно подключиться, и выполните следующую команду.Replace <customer tenant domain name> with the name of the tenant domain that you want to connect to, and run the following command:

    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell-liveid?DelegatedOrg=<customer tenant domain name> -Credential $UserCredential -Authentication Basic -AllowRedirection
    

    Ключевой этап этой команды — указание пользователя, отчетные данные о котором нужно получить. Это делается в параметре ConnectionURI, где указывается полное имя исходного домена как значение для параметра ?DelegatedOrg=. Это значение указывает правильную конечную точку Exchange Online PowerShell, к которой нужно подключиться. Удаленный сеанс PowerShell должен подключаться к службе отчетов Office 365 в контексте определенного пользователя при каждом запуске. После подключения к Exchange Online PowerShell запускаются все последующие команды в контексте пользователя, что предоставляет вам доступ ко всем доступным отчетам для пользователя.The key step in this command is specifying which customer to access for the reporting information. You do this in the ConnectionURI parameter, where you provide the FQDN of the initial domain name as the value to the ?DelegatedOrg= parameter. This tells remote Windows PowerShell for Exchange Online PowerShell remote Windows PowerShell the endpoint to connect to. remote Windows PowerShell must connect to Office 365 reporting in the context of a specific customer each time a report is run. After this customer is specified, all of the following commands are run in the context of that customer. This lets the partner to access all the available reports for this customer.

  3. Выполните следующую команду.Run the following command.

    Import-PSSession $Session
    

Примечание

В одной учетной записи можно одновременно запускать до трех сеансов. По завершении настройки отключите удаленный сеанс PowerShell. Если закрыть окно Windows PowerShell, не выполнив отключение сеанса, то можно исчерпать лимит доступных сеансов удаленной среды PowerShell. К тому же, придется дождаться завершения сеанса. Чтобы отключить удаленный сеанс PowerShell, выполните приведенную ниже команду.There is a limit of three simultaneous sessions that can run under one account. Be sure to disconnect the remote Windows PowerShell session when you're finished. If you close the Windows PowerShell window without disconnecting the session, you can use up all the remote Windows PowerShell sessions available to you, and you'll need to wait for the sessions to expire. To disconnect the remote Windows PowerShell session, run the following command. >

Remove-PSSession $Session

Как проверить, что все получилось?How do you know this worked?

После шага 3 командлеты Exchange Online импортируются в локальный сеанс Windows PowerShell, на что указывает индикатор выполнения. Если при этом не возникают ошибки, подключение установлено. Чтобы выполнить быструю проверку, запустите командлет Exchange Online (например, Get-Mailbox) и просмотрите результаты его выполнения.After Step 3, the Exchange Online cmdlets are imported into your local Windows PowerShell session as tracked by a progress bar. If you don't receive any errors, you connected successfully. A quick test is to run an Exchange Online cmdlet—for example, Get-Mailbox —and see the results.

Если возникают ошибки, просмотрите список возможных причин ниже.If you receive errors, check the following requirements:

  • Распространенная проблема — неправильный пароль. Еще раз повторите три описанные выше действия, уделив особое внимание действию 1 — вводу имени пользователя и пароля.A common problem is an incorrect password. Run the three steps again and pay close attention to the user name and password you enter in Step 1.

  • Для учетной записи, которую вы используете для подключения к Exchange Online, необходимо включить доступ к удаленному сеансу PowerShell. Дополнительные сведения см. в статье Включение и отключение доступа к Exchange Online PowerShell.The account you use to connect to Exchange Online must be enabled for remote Windows PowerShell. For more information, see Manage Remote PowerShell Access in Exchange Online.

  • Между клиентским компьютером и службой Exchange Online должен быть открыт порт TCP-порт 80. Вполне вероятно, что он уже открыт, но в этом следует убедиться, если в вашей организации действует политика ограниченного доступа к Интернету.TCP port 80 traffic needs to be open between your local computer and Exchange Online. It's probably open, but it's something to consider if your organization has a restrictive Internet access policy.

Вызов командлета напрямую с помощью команды Invoke-CommandCall the cmdlet directly with Invoke-Command

Импорт удаленного сеанса PowerShell (шаг 3) может занимать много времени, поскольку в нем используются все командлеты Exchange Online. Это может быть проблемой при пакетной обработке (например, если создаются отчеты или выполняется пакетное изменение для разных клиентов). Вместо того чтобы использовать Import-PSSession, вы можете вызывать нужные командлеты напрямую с помощью команды Invoke-Command. Например, чтобы вызвать командлет Get-Milbox, вставьте этот код вместо команды Import-PSSession $Session на шаге 3:Importing a remote Windows PowerShell session can be a lengthy process because it brings in all Exchange Online cmdlets. This can be an issue in batch processing—for example, when you are running reports or making bulk changes for different tenants. As an alternative to using Import-PSSession, you can call cmdlets you want to use directly with Invoke-Command. For example, to call the get-mailbox cmdlet, substitute this syntax for .

Invoke-Command -Session $Session -ScriptBlock {Get-Mailbox}

Дополнительные командлеты для отчетовMore reporting cmdlets

В этом разделе используются командлеты Windows PowerShell. Дополнительные сведения об этих командлетах см. в следующих статьях.The cmdlets that you used in this topic are Windows PowerShell cmdlets. For more information about these cmdlets, see the following topics: