С помощью Windows PowerShell
можно управлять объектами Windows Azure AD
и Office 365
. В следующих статьях рассмотрено настройку и подключение к удаленной сессии PowerShell
и перечень допустимых командлет:
- Manage Windows Azure AD using Windows PowerShell — предварительные требования, подключение к
Windows Azure AD
; - Manage Remote PowerShell Access in Exchange Online — управление удаленным доступом
PowerShell
вExchange Online
; - Exchange 2013 Cmdlets — перечень командлет для
Exchange 2013
. - Exchange Online Cmdlets — перечень командлет для
Exchange Online
, разбитый на группы.
Для того, чтобы управлять сервисами Office 365
с помощью Power Shell
, нужно предварительно установить такие обновления:
- Microsoft Online Services Sign-In Assistant for IT Professionals;
- Windows Management Framework 3.0, если планируется подключение с Windows 7 SP 1, Windows Server 2008 R2 SP1, или Windows Server 2008 SP 2;
- Windows Azure Active Directory Module for Windows PowerShell.
Последнее обновление добавляет в главное меню пункт Windows Azure Active Directory Module for Windows PowerShell
.
Взаимодействие с облачными службами Windows Azure AD
и Office 365
состоит из таких этапов:
- Поключиться к
Office 365
с помощью командлет
$LiveCred = get-credential
connect-msolservice -credential $LiveCred
и затем ввести имя и пароль «облачной» учетной записи (в нашем случае Owner.Account@ExampleCompany.onmicrosoft.com
) в диалоговое окно Windows PowerShell Credential Request
.
- Выполнить импорт облачной сессии в локальную:
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic –AllowRedirection
Import-PSSession $Session
Следует использовать параметр AllowRedirection
, поскольку он позволяет PowerShell
подключаться к облачным сервисам организации используя один и тот же URL вне зависимости от того, в каком датацентре она расположена.
- Во время первого подключение команда импорта облачной сессии может выдать ошибку, если не разрешены запуски сценариев:
Import-PSSession : Files cannot be loaded because the running of scripts is disabled on this system. Please provide a valid certificate with which to sign the files.
At line:1 char:2
+ Import-PSSession $Session -AllowClobber
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Import-PSSession], PSInvalidOperationException
+ FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.ImportPSSessionCommand
В таком случае требуется запустить Windows Azure Active Directory Module for Windows PowerShell
с повышенными привелегиями и выполнить командлет
Set-ExecutionPolicy RemoteSigned
- Выполнить необходимые действия.
Основная цель данного цикла статей — настроить имперсонификацию пользователей в Exchange Online
. Поскольку изначально объекты облачной организации упакованы, попытка выполнения командлета приводит к такой ошибке:
The command you tried to run isn’t currently allowed in your organization. To run this command, you first need to run the command: Enable-OrganizationCustomization.
+ CategoryInfo : NotSpecified: (:) [New-ManagementScope], Invalid Operatio…ontextException
+ FullyQualifiedErrorId : [Server=DBXPR07MB207,RequestId=12345678-abcd-1234-5678-90abcdef1234,TimeStamp=01.01.2014 12:00:00] [FailureCategory=Cmdlet -InvalidOperationInDehydratedContextException] 12345678, Microsoft.Exchange.Management.Tasks.NewManagementScope
+ PSComputerName : outlook.office365.com
Объекты можно распаковать с помощью командлета:
Enable-OrganizationCustomization
- Отключить
Windows PowerShell
от облачного сервиса:
Remove-PSSession $Session
Если просто закрыть PowerShell
окно без отключения от серверной сессии, подключение остается активным 15 минут. При этом облачные сервисы позволяют не более трех одновременно активных сессий.
- Все используемые IP-адреса, имена серверов, компьютеров, доменов, пользователей, являются фиктивными и используются исключительно в демонстрационных целях.
- Информация приводится «AS IS».