Страницы

вторник, 10 августа 2010 г.

Удаленное подключение PowerShell к Communications Server "14" с настольной системы.

Продолжаем переводить все самое интересное. На этот раз это публикация из TechNet блога CS PowerShell. В которой Nick Smth демонстрирует сценарий Windows PowerShell 2.0 для удаленного подключения к Microsoft Communications Server.

Ссылка на оригинал: CS PowerShell


Удаленное подключение PowerShell к Communications Server "14" с настольной системы.

Nick Smith, Microsoft

Перед запуском этого скрипта, убедитесь, что клиентская система удовлетворяет всем требованиям для удаленного подключения Windows powerShell. Вот эти требования:
  • Windows PowerShell v2.0
  • .NET Framework 2.0
  • Windows Remote Management (WinRM) 2.0

Данные требования включены в Windows Management Framework и доступны для загрузки.

Для создания ярлыка на рабочем столе, который бы запускал удаленную сессию PowerShell, подключающуюся к Communications Server "14", следуйте данным инструкциям:

1. Откройте Блокнот (или ваш любимый редактор текстов или скриптов).

2. Скопируйте данный скрипт и вставьте его в Блокнот.


#*******************************************************************************
#* Author: Nick Smith (karsmith@microsoft.com)
#* Date: 6/20/2010
#* Purpose: This is a script that can be used when creating desktop icons that
#* will allow the user an easy way of connecting to remote powershell into a
#* CS '14' environment.
#* NOTE: THIS WAS DEVELOPED AGAINST CS '14' BETA AND DOES NOT INCLUDE MUCH
#* ERROR CHECKING. USE AT YOUR OWN RISK.
#*******************************************************************************
Param (
[switch] $AuthenticationPrompt = $false,
[string] $CSPoolFQDN = (read-host "Enter the FQDN of the Communications Server Pool"),
[string] $AdminUsername = "domain\username"
)

$Error.Clear()
If ($AuthenticationPrompt) {
Write-Host -ForegroundColor Green "Requesting Credentials for CS Administrative Session"
$CSSession = New-PSSession -ConnectionUri https://$CSPoolFQDN/ocspowershell -Credential $AdminUsername - ErrorAction SilentlyContinue
}
else {
$CSSession = New-PSSession -ConnectionUri https://$CSPoolFQDN/ocspowershell -Authentication NegotiateWithImplicitCredential -ErrorAction SilentlyContinue

}

If ($Error.count -gt 0){
Write-Host -ForegroundColor Red "Unable to Connect to CS Administrative Session`n Error:" $Error
}
else {
$ImportResults = Import-PSSession -Session $CSSession
Write-Host -ForegroundColor Green "Connected to CS Administrative Session`nImported" $ImportResults.ExportedFunctions.count "CS Functions"
}

cd $env:UserProfile



3. Сохраните файл с расширением .ps1, например, C:\Scripts\Start-CsRemotePowerShell.ps1

4. Создайте ярлык на рабочем столе клиентской системы, для последующих действий. Убедитесь, что вы изменили все выделенные значения, так, чтобы они соответствовали вашей среде.

  • Для использования интегрированной проверки подлинности
§ powershell.exe -noexit -executionpolicy bypass -file c:\scripts\start- csremotepowershell.ps1 –CSPoolFQDN CSPool01.contoso.local

  • Для использования строки проверки подлинности
§ powershell.exe -noexit -executionpolicy bypass -file c:\scripts\start- csremotepowershell.ps1 -AuthenticationPrompt -CSPoolFQDN CSpool01.contoso.local -AdminUsername contoso\administrator