共用方式為


安裝並使用 Windows PowerShell 網頁存取

更新日期:2013年11月5日(編輯日期:2017年8月23日)

適用於:Windows Server 2012 R2、Windows Server 2012

簡介

Windows PowerShell Web Access 首次於 Windows Server 2012 推出,作為 Windows PowerShell 閘道,提供一個針對遠端電腦的網頁 Windows PowerShell 主控台。 它讓 IT 專業人員能從網頁瀏覽器的 Windows PowerShell 主控台執行 Windows PowerShell 指令與腳本,無需在用戶端裝置安裝 Windows PowerShell、遠端管理軟體或瀏覽器外掛。 執行網頁版 Windows PowerShell 主控台所需的條件,只需一個正確設定的 Windows PowerShell 網頁存取閘道,以及支援 JavaScript 並接受 Cookie 的用戶端裝置瀏覽器。

客戶裝置的例子包括筆記型電腦、非工作用個人電腦、借用電腦、平板電腦、網頁自助服務機、非運行 Windows 作業系統的電腦,以及手機瀏覽器。 IT 專業人員能從具備網際網路連線及網頁瀏覽器的裝置,對遠端 Windows 伺服器執行關鍵管理任務。

成功設置與設定閘道器後,使用者可透過網頁瀏覽器存取 Windows PowerShell 主控台。 當使用者開啟受保護的 Windows PowerShell 網頁存取網站時,成功認證後即可執行基於網頁的 Windows PowerShell 主控台。

Windows PowerShell 網頁存取的設定與設定是一個三步驟的過程:

  1. 安裝 Windows PowerShell Web Access
  2. 配置閘道器
  3. 設定限制性授權規則

在安裝並設定 Windows PowerShell Web Access 之前,我們建議您閱讀這份完整指南,其中包含如何安裝、保護及卸載 Windows PowerShell Web Access 的說明。 「使用網頁版 Windows PowerShell 主控台」主題說明使用者如何登入網頁版主控台,並涵蓋網頁版 Windows PowerShell 主控台與 powershell.exe 主控台之間的限制與差異。 網頁主控台的終端使用者應閱讀「 使用基於網頁的 Windows PowerShell 主控台」,但不必閱讀本指南的其餘部分。

本主題不提供深入的 IIS 網頁伺服器操作指導;本主題僅描述配置 Windows PowerShell 網頁存取閘道所需的步驟。 欲了解更多關於在 IIS 中設定與保護網站的資訊,請參閱「參見」章節中的 IIS 文件資源。

下圖顯示 Windows PowerShell 網頁存取的運作方式。

Windows PowerShell Web Access diagram

Windows PowerShell 網頁存取的執行要求

Windows PowerShell 網頁存取需要在你想執行閘道的伺服器上執行 Web Server(IIS)、.NET Framework 4.5,以及 Windows PowerShell 3.0 或 Windows PowerShell 4.0。 你可以在運行 Windows Server 2012 R2 或 Windows Server 2012 的伺服器上安裝 Windows PowerShell Web Access,方法是在伺服器管理員中的新增角色與功能嚮導,或是 Server Manager 的 Windows PowerShell 部署指令小程式。 當你使用 Server Manager 或其部署指令(cmdlet)安裝 Windows PowerShell Web Access 時,安裝過程中會自動新增所需的角色與功能。

Windows PowerShell 網頁存取允許遠端使用者透過網頁瀏覽器中的 Windows PowerShell 存取組織內的電腦。 雖然 Windows PowerShell Web Access 是一種方便且強大的管理工具,但基於網頁的存取存在安全風險,應盡可能安全地設定。 我們建議設定 Windows PowerShell Web Access 閘道的管理員使用可用的安全層,包括 Windows PowerShell Web Access 內建的基於 cmdlet 的授權規則,以及 Web Server(IIS)及第三方應用程式中可用的安全層。 本文件包含僅推薦用於測試環境的非安全範例,以及推薦用於安全部署的範例。

瀏覽器與用戶端裝置支援

Windows PowerShell 網頁存取支援以下網路瀏覽器。 雖然行動瀏覽器尚未獲得官方支援,但許多瀏覽器可能能執行基於網頁的 Windows PowerShell 主控台。 其他接受 Cookie、執行 JavaScript 及 HTTPS 網站的瀏覽器預期能正常運作,但尚未正式測試。

支援的桌上型電腦瀏覽器

  • Windows Internet Explorer 適用於 Microsoft Windows 8.0、9.0、10.0 及 11.0
  • Mozilla Firefox 10.0.2
  • Windows 版 Google Chrome 17.0.963.56m
  • Windows 版 Apple Safari 5.1.2
  • Mac OS 版 Apple Safari 5.1.2

測試極少的行動裝置或瀏覽器

  • Windows Phone 7 與 7.5
  • Google Android WebKit 3.1 瀏覽器 Android 2.2.1(核心 2.6)
  • Apple Safari for iPhone 作業系統 5.0.1
  • Apple Safari for iPad 2 作業系統 5.0.1

瀏覽器需求

要使用 Windows PowerShell Web Access 網頁控制台,瀏覽器必須完成以下操作。

  • 允許 Windows PowerShell 網路存取閘道網站的 cookies。
  • 能夠開啟並閱讀 HTTPS 頁面。
  • 開啟並執行使用 JavaScript 的網站。

你可以在運行 Windows Server 2012 R2 或 Windows Server 2012 的伺服器上安裝 Windows PowerShell 網頁存取閘道,方法是使用 Windows PowerShell 指令列,或是從伺服器管理員中開啟的新增角色與功能精靈。 為了快速安裝與設定,請使用本節所述的 Windows PowerShell 指令程式。

  1. 安裝 Windows PowerShell Web Access
  2. 配置閘道器
  3. 設定限制性授權規則

使用 PowerShell cmdlets 安裝 Windows PowerShell Web Access

使用 Windows PowerShell 指令本安裝 Windows PowerShell 網頁存取

  1. 執行下列其中一個動作,以高階使用者權限開啟 Windows PowerShell 工作階段。

    • 在 Windows 桌面上,以滑鼠右鍵按一下工作列上的 Windows PowerShell ,然後按一下 [以系統管理員身分執行]。
    • 在 Windows 開始 畫面中,右鍵點 選 Windows PowerShell,然後點選 以管理員身份執行

    備註

    在 Windows PowerShell 3.0 和 4.0 中,執行模組中的 cmdlet 前,無需先將 Server Manager 指令模組模組匯入 Windows PowerShell 會話。 模組會在你第一次執行該模組中屬於 cmdlet 時自動匯入。 另外,Windows PowerShell 的 cmdlet 並不區分大小寫。

  2. 請輸入以下內容,然後按下 Enter,其中 computer_name 代表你想安裝 Windows PowerShell Web Access 的遠端電腦(如適用)。 該 -Restart 參數會自動重啟目的地伺服器(如有需要)。

    Install-WindowsFeature -Name WindowsPowerShellWebAccess -ComputerName <computer_name> -IncludeManagementTools -Restart

    備註

    使用 Windows PowerShell cmdlets 安裝 Windows PowerShell 網頁存取,預設不會新增 Web Server(IIS)管理工具。 如果你想在與 Windows PowerShell Web Access 閘道相同的伺服器上安裝管理工具,請在安裝指令中加入 -IncludeManagementTools 參數(如本步驟所示)。 如果你是從遠端電腦管理 Windows PowerShell 網頁存取網站,請在你想管理閘道的電腦上安裝 Windows 8.1 遠端伺服器管理工具Windows 8 遠端伺服器管理工具 ,安裝 IIS Manager snap-in。

    要在離線 VHD 上安裝角色和功能,你必須同時 -ComputerName 加入參數和參數 -VHD 。 參數 -ComputerName 包含掛載 VHD 的伺服器名稱, -VHD 參數則包含該伺服器上 VHD 檔案的路徑。

    Install-WindowsFeature -Name WindowsPowerShellWebAccess -VHD <path> -ComputerName <computer_name> -IncludeManagementTools -Restart

  3. 安裝完成後,請在目標伺服器上執行 Get-WindowsFeature cmdlet,並在已開啟並提升使用者權限的 Windows PowerShell 主控台中,確認 Windows PowerShell Web Access 已安裝於目的地伺服器。 您也可以在伺服器管理員主控台中,透過「 所有伺服器 」頁面選擇目的地伺服器,然後查看所選伺服器的角色 與功能 圖塊,確認 Windows PowerShell 網頁存取是否已安裝。 您也可以查看 Windows PowerShell Web Access 的說明文件。

  4. 安裝 Windows PowerShell Web Access 後,系統會提示您檢視 readme 檔,該檔包含閘道器基本且必要的設定說明。 這些設定說明也在下一節「 設定閘道器」中。 readme 檔案的路徑為 C:\Windows\Web\PowerShellWebAccess\wwwroot\README.txt

配置閘道器

Install-PswaWebApplication 指令檔是快速設定 Windows PowerShell Web Access 的方法。 雖然你可以在 cmdlet 中加入UseTestCertificateInstall-PswaWebApplication參數,安裝自簽 SSL 憑證以供測試,但這並不安全;對於安全的生產環境,務必使用由認證機構(CA)簽署的有效 SSL 憑證。 管理員可透過 IIS Manager 主控台將測試憑證替換為他們選擇的簽署憑證。

你可以透過執行 Install-PswaWebApplication cmdlet 或在 IIS Manager 中執行基於 GUI 的設定步驟來完成 Windows PowerShell Web Access 網頁應用程式的設定。 預設情況下,指令長會將網頁應用程式、 pswa (以及相關的應用程式池, pswa_pool)安裝在 預設網站 容器中,如 IIS Manager 所示;如果需要,你可以指示 cmdlet 更改網頁應用程式的預設網站容器。 IIS Manager 提供網頁應用程式可用的設定選項,例如更改埠號或安全套接層(SSL)憑證。

這很重要

我們強烈建議管理員設定閘道器使用由 CA 簽署的有效憑證。

使用 Install-PswaWebApplication 來設定 Windows PowerShell 網頁存取閘道並取得測試憑證

  1. 請執行以下其中一項來開啟 Windows PowerShell 工作階段。

    • 在 Windows 桌面,工作列右鍵點擊 Windows PowerShell
    • 在 Windows 開始 畫面,點選 Windows PowerShell
  2. 輸入下列內容,然後按 Enter

    Install-PswaWebApplication -UseTestCertificate

    這很重要

    UseTestCertificate 參數應僅用於私人測試環境。 對於安全的生產環境,我們建議使用由 CA 簽署的有效憑證。

    執行 cmdlet 會將 Windows PowerShell Web Access 網頁應用程式安裝在 IIS 預設網站容器中。 該 cmdlet 建立了在預設網站 . 上執行 Windows PowerShell Web Access 所需的基礎設施。 https://<server_name>/pswa 若要在不同網站安裝網頁應用程式,請透過新增 WebSiteName 參數提供網站名稱。 若要更改網頁應用程式名稱(預設為 pswa),請加入 WebApplicationName 參數。

    以下設定可透過執行 cmdlet 來設定。 如果需要,你可以在 IIS 管理控制台手動更改這些設定。

    • 路徑:/pswa
    • 應用程式池:pswa_pool
    • EnabledProtocols:http
    • PhysicalPath: %windir%/Web/PowerShellWebAccess/wwwroot

    範例Install-PswaWebApplication -webApplicationName myWebApp -useTestCertificate

    在此範例中,Windows PowerShell 網頁存取的最終網站為 https://<server_name>/myWebApp

    備註

    在用戶透過新增授權規則取得網站存取權之前,無法登入。 欲了解更多資訊,請參閱 「配置限制性授權規則 」及 「Windows PowerShell 網頁存取的授權規則與安全特性」。

使用 Install-PswaWebApplication 和 IIS Manager 來設定 Windows PowerShell Web Access 閘道的真實憑證

  1. 請執行以下其中一項來開啟 Windows PowerShell 工作階段。

    • 在 Windows 桌面,工作列右鍵點擊 Windows PowerShell
    • 在 Windows 開始 畫面,點選 Windows PowerShell
  2. 輸入下列內容,然後按 Enter

    Install-PswaWebApplication

    以下閘道設定可透過執行 cmdlet 來設定。 如果需要,你可以在 IIS 管理控制台手動更改這些設定。 你也可以指定 cmdlet 的 Install-PswaWebApplicationWebsiteNameWebApplicationName 參數值。

    • 路徑:/pswa
    • 應用程式池:pswa_pool
    • EnabledProtocols:http
    • PhysicalPath: %windir%/Web/PowerShellWebAccess/wwwroot
  3. 透過以下其中一項操作開啟 IIS 管理員主控台。

    • 在 Windows 桌面上,按一下 Windows 工作列中的 [伺服器管理員 ] 來啟動伺服器管理員。 在伺服器管理員的工具選單中,點選「網際網路資訊服務(IIS)管理員」。
    • 在 Windows 開始 畫面,點選 伺服器管理員
  4. 在 IIS Manager 樹狀窗格中,展開安裝 Windows PowerShell Web Access 的伺服器節點,直到 Sites 資料夾可見。 展開 Sites 資料夾。

  5. 選擇您安裝 Windows PowerShell Web Access 網頁應用程式的網站。 在 [動作] 窗格中,按一下 [繫結]

  6. 網站綁定 對話框中,點選 新增

  7. 「新增網站綁定 」對話框的 類型 欄位中,選擇 https

  8. SSL 憑證 欄位,從下拉選單選擇你簽署的憑證。 按一下 [確定]。 請參閱本主題中的 「在 IIS Manager 中設定 SSL 憑證 」以獲得更多取得憑證的資訊。

    Windows PowerShell Web Access 網頁應用程式現在已設定為使用你簽署的 SSL 憑證。

    你可以透過瀏覽器視窗開啟 https://<server_name>/pswa Windows PowerShell 網頁存取。

    備註

    在用戶透過新增授權規則取得網站存取權之前,無法登入。 欲了解更多資訊,請參閱本主題中的 「配置限制性授權規則」及「 Windows PowerShell 網頁存取的授權規則與安全特性」。

設定限制性授權規則

安裝 Windows PowerShell Web Access 並設定閘道器後,使用者可以在瀏覽器中開啟登入頁面,但在 Windows PowerShell 網頁存取管理員明確授權使用者之前,無法登入。 Windows PowerShell 的網頁存取控制可透過以下表格中描述的 Windows PowerShell 指令碼集合來管理。 目前沒有類似的 GUI 來新增或管理授權規則。 欲了解更多關於 Windows PowerShell Web Access 指令母帶的詳細資訊,請參閱 cmdlet 參考主題,Windows PowerShell 網頁存取指令母串。

欲了解更多關於 Windows PowerShell Web Access 授權規則與安全性的詳細資訊,請參閱 Windows PowerShell Web Access 的授權規則與安全特性

加入限制性授權規則

  1. 執行下列其中一個動作,以高階使用者權限開啟 Windows PowerShell 工作階段。

    • 在 Windows 桌面上,以滑鼠右鍵按一下工作列上的 Windows PowerShell ,然後按一下 [以系統管理員身分執行]。
    • 在 Windows 開始 畫面中,右鍵點 選 Windows PowerShell,然後點選 以管理員身份執行
  2. 使用會話設定限制使用者存取的選用步驟:確認你想在規則中使用的會話設定已經存在。 如果尚未建立,請使用說明在 about_Session_Configuration_Files 中建立會話設定。

  3. 輸入下列內容,然後按 Enter

    Add-PswaAuthorizationRule -UserName <domain\user | computer\user> -ComputerName <computer_name> -ConfigurationName <session_configuration_name>

    此授權規則允許特定使用者存取其通常可存取的網路中一台電腦,並可依照使用者典型的腳本與指令包需求進行特定會話設定。

    以下範例中,網域中命名JSmithContoso的使用者被授權管理電腦Contoso_214,並使用名為 NewAdminsOnly的會話設定。

    Add-PswaAuthorizationRule -UserName Contoso\JSmith -ComputerName Contoso_214 -ConfigurationName NewAdminsOnly

  4. 請透過執行 Get-PswaAuthorizationRule cmdlet 或 Test-PswaAuthorizationRule -UserName <domain\user> -ComputerName <computer-name>

    例如: Test-PswaAuthorizationRule -UserName 'Contoso\JSmith' -ComputerName Contoso_214

設定好授權規則後,授權使用者即可登入網頁版主控台,開始使用 Windows PowerShell Web Access。

自訂部署

你可以在執行 Windows Server 2012 R2 或 Windows Server 2012 的伺服器上,透過伺服器管理員中的「新增角色與功能」精靈,安裝 Windows PowerShell Web Access 閘道。 安裝 Windows PowerShell Web Access 後,你可以在 IIS Manager 中自訂閘道的設定。

使用 Add Roles and Features 精靈安裝 Windows PowerShell 網頁存取

  1. 如果已經開啟伺服器管理員,請移至下一個步驟。 如果尚未開啟伺服器管理員,請執行下列其中一項動作來將它開啟。

    • 在 Windows 桌面上,按一下 Windows 工作列中的 [伺服器管理員 ] 來啟動伺服器管理員。
    • 在 Windows 開始 畫面,點選 伺服器管理員
  2. 管理 選單中,點選 新增角色與功能

  3. 在 [選取安裝類型] 頁面上,選取 [角色型或功能型安裝] 。 按 [下一步]。

  4. 選擇目標伺服器 頁面,從伺服器池中選擇一台伺服器,或選擇離線 VHD。 要選擇離線 VHD 作為你的目標伺服器,先選擇要掛載 VHD 的伺服器,然後選擇 VHD 檔案。 關於如何將伺服器加入伺服器池的資訊,請參閱伺服器管理員說明。 選擇目標伺服器後,點擊 「下一步」。

  5. 在精靈的 「選擇功能 」頁面,展開 Windows PowerShell,然後選擇 Windows PowerShell 網頁存取

  6. 請注意,系統會提示您新增必要功能,例如 .NET Framework 4.5 以及 Web Server (IIS) 的角色服務。 新增必要功能後繼續。

    備註

    透過新增角色與功能向導安裝 Windows PowerShell 網頁存取,也會安裝網頁伺服器(IIS),包括 IIS Manager 的卡扣功能。 如果你使用新增角色與功能向導,snap-in 及其他 IIS 管理工具預設會安裝。 若依以下程序使用 Windows PowerShell 指令碼安裝 Windows PowerShell 網頁存取,管理工具預設不會被新增。

  7. 確認安裝選擇 頁面,如果 Windows PowerShell Web Access 的功能檔案未儲存在你在步驟 4 選擇的目標伺服器上,請點選 「指定替代來源路徑」,並提供功能檔案的路徑。 否則,請點擊 安裝

  8. 點擊 安裝後, 安裝進度 頁面會顯示安裝進度、結果,以及 Windows PowerShell Web Access 所需的警告、失敗或安裝後設定步驟等訊息。 安裝 Windows PowerShell Web Access 後,系統會提示您檢視 readme 檔,該檔包含閘道器基本且必要的設定說明。 這些說明也包含在本主題中。 readme 檔案的路徑為 C:\Windows\Web\PowerShellWebAccess\wwwroot\README.txt

設定閘道

本節的說明是針對安裝 Windows PowerShell Web Access 網頁應用程式的子目錄,而非網站根目錄。 此程序是基於圖形介面的指令碼(cmdlet)所執行 Install-PswaWebApplication 動作的等價物。 本節亦包含如何使用 IIS Manager 將 Windows PowerShell Web Access 閘道設定為根網站的說明。

使用 IIS Manager 在現有網站中設定閘道

  1. 透過以下其中一項操作開啟 IIS 管理員主控台。

    • 在 Windows 桌面上,按一下 Windows 工作列中的 [伺服器管理員 ] 來啟動伺服器管理員。 在伺服器管理員的工具選單中,點選「網際網路資訊服務(IIS)管理員」。
    • 在 Windows 開始畫面中,輸入名稱中任一部分為「Internet Information Services (IIS) Manager」。 當捷徑顯示在 Apps 結果中時,點擊它。
  2. 建立一個新的 Windows PowerShell 網頁存取應用程式池。 在 IIS Manager 樹狀窗格中展開閘道伺服器的節點,選擇應用程式池,然後在動作窗格中點選新增應用程式池

  3. 新增一個名為 pswa_pool 的申請池,或提供其他名稱。 按一下 [確定]

  4. 在 IIS Manager 樹狀窗格中,展開安裝 Windows PowerShell Web Access 的伺服器節點,直到 Sites 資料夾可見。 選擇 Sites 資料夾。

  5. 右鍵點擊你想新增 Windows PowerShell 網頁存取網站的網站(例如預設 網站),然後點選 新增應用程式

  6. 別名 欄位輸入 pswa,或提供其他別名。 別名即成為虛擬目錄名稱。 例如,以下網址中的 pswa 代表此步驟中指定的別名: https://<server-name>/pswa

  7. 「應用程式池 」欄位,選擇你在步驟 3 建立的應用程式池。

  8. 實體路徑 欄位中,瀏覽應用程式的位置。 你可以使用預設的位置。 $env:windir/Web/PowerShellWebAccess/wwwroot 按一下 [確定]

  9. 請依照本主題中 IIS Manager 中設定 SSL 憑證 的步驟操作。

  10. 可選的安全措施:

    在樹狀圖窗格中選擇網站後,在內容欄目中雙擊 SSL 設定 。 選擇「強制 SSL」,然後在動作面板點選套用」。 在 SSL 設定 面板中,您可以選擇要求連接 Windows PowerShell 網頁存取網站的使用者擁有客戶端憑證。 用戶端憑證有助於驗證用戶端裝置使用者的身份。 欲了解更多關於要求客戶端憑證如何提升 Windows PowerShell Web Access 安全性的資訊,請參閱本指南中的 授權規則與 Windows PowerShell Web Access 的安全特性

  11. 在用戶端裝置上開啟瀏覽器會話。 欲了解更多支援的瀏覽器與裝置資訊,請參閱本主題中的 瀏覽器與用戶端裝置支援

  12. 開啟新的 Windows PowerShell Web Access 網站,https://<gateway-server-name>/pswa

    瀏覽器應該會顯示 Windows PowerShell 網頁存取主控台的登入頁面。

    備註

    在用戶透過新增授權規則取得網站存取權之前,無法登入。 欲了解更多資訊,請參閱本主題中的 「配置限制性授權規則」及「 Windows PowerShell 網頁存取的授權規則與安全特性」。

  13. 在已開啟且具備提升使用者權限(以管理員身份執行)的 Windows PowerShell 會話中,執行以下腳本,其中 application_pool_name 代表你在步驟 3 建立的應用程式池名稱,以賦予該應用程式池對授權檔案的存取權限。

    $applicationPoolName = "<application_pool_name>"
    $authorizationFile = "C:\windows\web\powershellwebaccess\data\AuthorizationRules.xml"
    c:\windows\system32\icacls.exe $authorizationFile /grant ('"' + "IIS AppPool\$applicationPoolName" + '":R') > $null
    

    要查看授權檔案現有的存取權限,請執行以下指令:

    c:\windows\system32\icacls.exe $authorizationFile
    

使用 IIS Manager 將閘道設定為根網站並附有測試憑證

  1. 透過以下其中一項操作開啟 IIS 管理員主控台。

    • 在 Windows 桌面上,按一下 Windows 工作列中的 [伺服器管理員 ] 來啟動伺服器管理員。 在伺服器管理員的工具選單中,點選「網際網路資訊服務(IIS)管理員」。
    • 在 Windows 開始畫面中,輸入名稱中任一部分為「Internet Information Services (IIS) Manager」。 當捷徑顯示在 Apps 結果中時,點擊它。
  2. 在 IIS Manager 樹狀窗格中,展開安裝 Windows PowerShell Web Access 的伺服器節點,直到 Sites 資料夾可見。 選擇 Sites 資料夾。

  3. 動作 面板中,點選 新增網站

  4. 輸入網站名稱,例如 Windows PowerShell Web Access

  5. 新網站會自動建立一個應用程式池。 若要使用不同的應用程式池,請點擊 選擇 一個應用程式池以與新網站關聯。 在 「選擇應用程式池 」對話框中選擇替代應用程式池,然後點 選確定

  6. 物理路徑 文字框中,導向 /Web/PowerShellWebAccess/wwwroot %windir%。

  7. 綁定區的類型欄位,選擇 https

  8. 為尚未被其他網站或應用程式使用的網站分配一個埠號。 要找到開放的埠口,可以在命令提示字元視窗執行 netstat 指令。 預設埠號為 443。

    如果其他網站已經使用 443,或有其他安全理由更改埠號,請更改預設埠口。 如果你的閘道伺服器上有另一個網站正在使用你選擇的埠,當你在「新增網站」對話框點擊確定時,會顯示警告。 你必須使用未使用的埠來執行 Windows PowerShell Web Access。

  9. 若組織需要,可選擇指定一個對組織及使用者都有意義的主機名稱,例如 www.contoso.com。 按一下 [確定]

  10. 為了更安全的生產環境,我們強烈建議提供由 CA 簽署的有效憑證。 你必須提供 SSL 憑證,因為使用者只能透過 HTTPS 網站連接 Windows PowerShell 網頁存取。 請參閱本主題中的 「在 IIS Manager 中設定 SSL 憑證 」以獲得更多取得憑證的資訊。

  11. 點擊 確定 以關閉 新增網站 對話框。

  12. 在已開啟且已提升使用者權限(以管理員身份執行)的 Windows PowerShell 工作階段中,執行以下腳本,其中 application_pool_name 代表你在步驟 4 建立的應用程式池名稱,賦予該應用程式池對授權檔案的存取權限。

    $applicationPoolName = "<application_pool_name>"
    $authorizationFile = "C:\windows\web\powershellwebaccess\data\AuthorizationRules.xml"
    c:\windows\system32\icacls.exe $authorizationFile /grant ('"' + "IIS AppPool\$applicationPoolName" + '":R') > $null
    

    要查看授權檔案現有的存取權限,請執行以下指令:

    c:\windows\system32\icacls.exe $authorizationFile
    
  13. 在 IIS Manager 樹狀窗格中選擇新網站後,點擊動作面板中的開始以啟動網站。

  14. 在用戶端裝置上開啟瀏覽器會話。 欲了解更多支援瀏覽器與裝置的資訊,請參閱本文件中的 瀏覽器與用戶端裝置支援

  15. 打開新的 Windows PowerShell 網頁存取網站。

    由於根網站指向 Windows PowerShell Web Access 資料夾,瀏覽器在開啟 https://<gateway_server_name>時應該會顯示 Windows PowerShell Web Access 登入頁面。 你不需要在網址上加上 /pswa

    備註

    在用戶透過新增授權規則取得網站存取權之前,無法登入。 欲了解更多資訊,請參閱本主題中的 「配置限制性授權規則」及「 Windows PowerShell 網頁存取的授權規則與安全特性」。

設定限制性授權規則

安裝 Windows PowerShell Web Access 並設定閘道器後,使用者可以在瀏覽器中開啟登入頁面,但在 Windows PowerShell 網頁存取管理員明確授權使用者之前,無法登入。 Windows PowerShell 的網頁存取控制可透過以下表格中描述的 Windows PowerShell 指令碼集合來管理。 目前沒有類似的 GUI 來新增或管理授權規則。 欲了解更多關於 Windows PowerShell Web Access 指令母帶的詳細資訊,請參閱 cmdlet 參考主題,Windows PowerShell 網頁存取指令母串。

欲了解更多關於 Windows PowerShell Web Access 授權規則與安全性的詳細資訊,請參閱 Windows PowerShell Web Access 的授權規則與安全特性

新增限制性授權規則

  1. 執行下列其中一個動作,以高階使用者權限開啟 Windows PowerShell 工作階段。

    • 在 Windows 桌面上,以滑鼠右鍵按一下工作列上的 Windows PowerShell ,然後按一下 [以系統管理員身分執行]。
    • 在 Windows 開始 畫面中,右鍵點 選 Windows PowerShell,然後點選 以管理員身份執行
  2. 使用會話設定限制使用者存取的可選步驟:

    確認你想在規則中使用的會話設定是否已經存在。 如果尚未建立,請使用說明在 about_Session_Configuration_Files 中建立會話設定。

  3. 輸入下列內容,然後按 Enter

    Add-PswaAuthorizationRule -UserName <domain\user | computer\user> -ComputerName <computer_name> -ConfigurationName <session_configuration_name>

    此授權規則允許特定使用者存取其通常可存取的網路中一台電腦,並可依照使用者典型的腳本與指令包需求進行特定會話設定™。

    以下範例中,網域中命名JSmithContoso的使用者被授權管理電腦Contoso_214,並使用名為 NewAdminsOnly的會話設定。

    Add-PswaAuthorizationRule -UserName 'Contoso\JSmith' -ComputerName Contoso_214 -ConfigurationName NewAdminsOnly

  4. 透過執行 Get-PswaAuthorizationRule cmdlet Test-PswaAuthorizationRule -UserName '<domain\user>' -ComputerName <computer-name>或 來驗證該規則是否已建立。

    例如: Test-PswaAuthorizationRule -UserName 'Contoso\JSmith' -ComputerName Contoso_214

    設定好授權規則後,授權使用者即可登入網頁版主控台,開始使用 Windows PowerShell Web Access。

設定一份真正的憑證

為了安全生產環境,務必使用由認證機構(CA)簽署的有效 SSL 憑證。 本節程序說明如何從 CA 取得並套用有效的 SSL 憑證。

在 IIS Manager 中設定 SSL 憑證

  1. 在 IIS Manager 樹狀窗格中,選擇安裝 Windows PowerShell Web Access 的伺服器。

  2. 在內容欄選中,雙擊 「伺服器憑證」。

  3. 動作 面板中,請執行以下其中一項。 欲了解更多關於在 IIS 中設定伺服器憑證的資訊,請參閱「 在 IIS 7 中配置伺服器憑證」。

    • 點擊 匯入 ,從你網路上的某個地點匯入現有且有效的憑證。

    • 點擊 「建立憑證請求 」,可向 VeriSignThawteGeoTrust 等 CA 申請憑證。 憑證的通用名稱必須與請求中的主機標頭相符。

      例如,如果用戶端瀏覽器請求 https://www.contoso.com/,則公共名稱也必須是 https://www.contoso.com/。 這是提供 Windows PowerShell Web Access 閘道憑證最安全且推薦的選項。

    • 點擊 「建立 Self-Signed 憑證 」即可建立一張憑證,你可以立即使用,之後如果需要,也可以由 CA 簽署。 請指定自簽憑證的友善名稱,例如 Windows PowerShell Web Access。 此選項不被視為安全,僅建議用於私人測試環境。

  4. 建立或取得憑證後,請在 IIS Manager 樹狀窗格中選擇該憑證所應用的網站(例如預設網站),然後在動作面板中點選「綁定」。

  5. 「新增網站綁定 」對話框中,如果網站尚未顯示,請為網站新增 https 綁定。 如果你沒有使用自簽憑證,請在此程序第三步指定主機名稱。 如果你使用自簽憑證,這個步驟就不是必須的。

  6. 選擇你在此步驟第三步取得或建立的證書,然後點擊 確定

使用 Windows PowerShell 主控台

安裝 Windows PowerShell Web Access 並完成閘道設定後,Windows PowerShell 網頁主控台即可使用。 欲了解更多關於使用網頁版主控台的資訊,請參閱 使用基於網頁的 Windows PowerShell 主控台

另請參閱

網際網路資訊服務(IIS)7.0 文件

IIS Manager 7.0 幫助

設定網頁伺服器安全(IIS 7)

IPsec 部署資源