次の方法で共有


Windows PowerShell Web Accessのインストールと使用

更新日: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 Web Accessゲートウェイと、JavaScriptをサポートしクッキーを受け入れるクライアントデバイスブラウザだけです。

クライアントデバイスの例としては、ノートパソコン、業務用パーソナルコンピュータ、借りたコンピュータ、タブレットコンピュータ、ウェブキオスク、WindowsベースのOSを搭載していないコンピュータ、携帯電話のブラウザなどがあります。 ITプロは、インターネット接続とウェブブラウザにアクセスできるデバイスから、リモートのWindowsサーバーに対して重要な管理タスクを行うことができます。

ゲートウェイの設定と設定が成功した後、ユーザーはウェブブラウザを使ってWindows PowerShellコンソールにアクセスできます。 ユーザーが安全なWindows PowerShell Web Accessウェブサイトを開くと、認証が成功した後にウェブベースのWindows PowerShellコンソールを実行できます。

Windows PowerShell Web Accessの設定と設定は、3段階のプロセスです。

  1. Windows PowerShell Web Access をインストールする
  2. ゲートウェイの設定
  3. 制限的認可ルールの設定

Windows PowerShell Web Accessのインストールと設定をする前に、このガイド全体を読むことをお勧めします。そこにはWindows PowerShell Web Accessのインストール、保護、アンインストールの方法が含まれています。 「 WebベースのWindows PowerShellコンソールを使う 」トピックでは、ユーザーがウェブベースのコンソールにサインインする方法を説明し、ウェブベースのWindows PowerShellコンソールと powershell.exe コンソールの制限や違いを扱っています。 ウェブベースのコンソールのエンドユーザーは「 Windows PowerShell Consoleをウェブベースで使う」を読むべきですが、このガイドの残りは読む必要はありません。

このトピックはIISウェブサーバーの運用に関する詳細なガイダンスを提供しません。このトピックでは、Windows PowerShell Web Access Gateway の設定に必要な手順のみを説明します。 IISでのウェブサイトの設定およびセキュリティに関する詳細は、「関連項目」セクションのIISドキュメントリソースをご覧ください。

以下の図はWindows PowerShell Web Accessの動作を示しています。

Windows PowerShell Web Access diagram

Windows PowerShell Web Access を実行するための要件

Windows PowerShell Web Accessは、ゲートウェイを実行したいサーバー上でWeb Server(IIS)、.NET Framework 4.5、Windows PowerShell 3.0またはWindows PowerShell 4.0が実行されている必要があります。 Windows Server 2012 R2またはWindows Server 2012を実行しているサーバーに、Server ManagerのAdd Roles and Features Wizard、またはServer ManagerのWindows PowerShellデプロイCmdletを使用することで、Windows PowerShell Web Accessをインストールできます。 Server Managerやそのデプロイコマンドレットを使ってWindows PowerShell Web Accessをインストールすると、必要な役割や機能がインストールプロセスの一部として自動的に追加されます。

Windows PowerShell Web Accessは、リモートユーザーがウェブブラウザのWindows PowerShellを使って組織内のコンピュータにアクセスできるようにします。 Windows PowerShell Web Accessは便利で強力な管理ツールですが、ウェブベースのアクセスにはセキュリティリスクが伴い、できる限り安全に設定する必要があります。 Windows PowerShell Web Access Gateway を設定する管理者には、Windows PowerShell Web Accessに含まれるコマンドレットベースの認可ルールと、Web Server(IIS)およびサードパーティアプリケーションで利用可能なセキュリティ層の両方を利用することを推奨します。 このドキュメントには、テスト環境にのみ推奨される非安全例と、安全な展開に推奨される例の両方が含まれています。

ブラウザおよびクライアントデバイスのサポート

Windows PowerShell Web Accessは以下のインターネットブラウザをサポートしています。 モバイルブラウザは公式にはサポートされていませんが、多くはウェブベースのWindowsのPowerShellコンソールを動かせるかもしれません。 クッキーを受け入れ、JavaScriptを実行し、HTTPSウェブサイトを運営する他のブラウザは動作すると期待されていますが、公式にはテストされていません。

対応デスクトップコンピュータブラウザ

  • Microsoft Windows 8.0、9.0、10.0、11.0向けのWindows Internet Explorer
  • Mozilla Firefox 10.0.2
  • Google Chrome 17.0.963.56m for Windows版
  • 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 Web Access Gateway ウェブサイトからのクッキーを許可してください。
  • HTTPSページを開いて読めるようにしましょう。
  • JavaScriptを使ったウェブサイトを開いて運営しましょう。

Windows PowerShell Web Accessゲートウェイは、Windows PowerShell コマンドレットを使用するか、Server Manager内で開く「Add Roles and Features Wizard」を使うことで、Windows Server 2012 R2またはWindows Server 2012を実行しているサーバーにインストールできます。 迅速なインストールと設定のために、このセクションで説明されているWindows PowerShellコマンドレットを使用してください。

  1. Windows PowerShell Web Access をインストールする
  2. ゲートウェイの設定
  3. 制限的認可ルールの設定

PowerShell コマンドレットを使ってWindows PowerShell Web Accessをインストールする

Windows PowerShell コマンドレットを使ってWindows PowerShell Web Accessをインストールする

  1. 次のいずれかを実行して、管理者特権を使って Windows PowerShell セッションを開きます。

    • Windows デスクトップで、タスク バーの [Windows PowerShell] を右クリックし、[管理者として実行] をクリックします。
    • Windows のスタート 画面で、 Windows PowerShellを右クリックしてから 「管理者として実行」をクリックします。

    Windows PowerShell 3.0および4.0では、モジュールの一部であるコマンドレットを実行する前に、Server ManagerのコマンドレットモジュールをWindows PowerShellセッションにインポートする必要はありません。 モジュールは、そのモジュールの一部であるコマンドレットを初めて実行したときに自動的にインポートされます。 また、Windows PowerShellのコマンドレットは大文字・小文字を区別しません。

  2. 以下を入力し、 Enterキーを押してください。ここで computer_name はWindows PowerShell Web Accessをインストールしたいリモートコンピュータを表します。 -Restartパラメータは必要に応じて宛先サーバーを自動的に再起動します。

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

    Windows PowerShellコマンドレットを使ってWindows PowerShell Web Accessをインストールしても、デフォルトではWebサーバー(IIS)管理ツールは追加されません。 Windows PowerShell Web Accessゲートウェイと同じサーバーに管理ツールをインストールしたい場合は、インストールコマンドに -IncludeManagementTools パラメータを追加してください(このステップで提供されています)。 リモートコンピュータからWindows PowerShell Web Accessウェブサイトを管理する場合は、ゲートウェイ管理したいコンピュータにWindows 8.1のリモートサーバー管理ツール またはWindows 8のリモートサーバー管理ツール をインストールしてIISマネージャーのスナップインをインストールしてください。

    オフラインのVHDにロールや機能をインストールするには、 -ComputerName パラメータと -VHD パラメータの両方を追加する必要があります。 -ComputerNameパラメータはVHDをマウントするサーバー名を含み、-VHDパラメータは指定されたサーバー上のVHDファイルへのパスを示します。

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

  3. インストールが完了したら、Windows PowerShell Web Accessが宛先サーバーにインストールされているか、Windows PowerShellコンソールでユーザー権限を昇格した状態で実行して、Windows PowerShell Web Accessが宛先 Get-WindowsFeature サーバーにインストールされているか確認してください。 また、すべての サーバー ページで宛先サーバーを選択し、選択したサーバーの ロールと機能 タイルを見ることで、サーバーマネージャーコンソールでWindows PowerShell Web Accessがインストールされているかも確認できます。 Windows PowerShell Web Accessのreadmeファイルも閲覧できます。

  4. Windows PowerShell Web Accessをインストールした後、ゲートウェイの基本かつ必要なセットアップ手順が記載されたreadmeファイルの確認を促されます。 これらのセットアップ手順は次のセクション「 ゲートウェイの設定」にも記載されています。 readmeファイルへのパスは C:\Windows\Web\PowerShellWebAccess\wwwroot\README.txtです。

ゲートウェイの設定

Install-PswaWebApplication コマンドレットは、Windows PowerShell Web Accessを素早く設定する方法です。 Install-PswaWebApplicationコマンドレットにUseTestCertificateパラメータを追加してテスト目的で自己署名のSSL証明書をインストールすることはできますが、これは安全ではありません。安全な本番環境では、必ず認証機関(CA)によって署名された有効なSSL証明書を使用してください。 管理者はIISマネージャーコンソールを使って、テスト証明書を自分で選んだ署名済み証明書に置き換えることができます。

Windows PowerShell Web Access Webアプリケーションの設定は、 Install-PswaWebApplication コマンドレットを実行するか、IIS ManagerでGUIベースの設定ステップを実行することで完了できます。 デフォルトでは、コマンドレットはIISマネージャーで示されているように、ウェブアプリケーション、pswa(およびそれに対応するアプリケーションプール、pswa_pool)をインストールします。希望すれば、コマンドレットにウェブアプリケーションのデフォルトサイトコンテナを変更するよう指示することもできます。 IISマネージャーは、ポート番号の変更やSecure Sockets Layer(SSL)証明書の変更など、ウェブアプリケーション向けの設定オプションを提供します。

Important

管理者には、CAによって署名された有効な証明書を使用するようゲートウェイを設定することを強く推奨します。

Windows PowerShell Web Access Gateway にテスト証明書を設定したい場合は、Install-PswaWebApplication を使います

  1. WindowsのPowerShellセッションを開くには、以下のいずれかを行ってください。

    • Windowsデスクトップでは、タスクバーの Windows PowerShell を右クリックします。
    • Windows スタート 画面でWindows PowerShellをクリックします。
  2. 次のように入力し、 Enter キーを押します。

    Install-PswaWebApplication -UseTestCertificate

    Important

    UseTestCertificateパラメータはプライベートテスト環境でのみ使用すべきです。 安全な本番環境では、CAによって署名された有効な証明書の使用を推奨します。

    コマンドレットを実行すると、Windows PowerShell Web Access WebアプリケーションがIISのデフォルト Web Site コンテナ内にインストールされます。 コマンドレットは、デフォルトのウェブサイト https://<server_name>/pswa上でWindows PowerShell Web Accessを実行するためのインフラを作成します。 別のウェブサイトにウェブアプリケーションをインストールするには、 WebSiteName パラメータを追加してウェブサイト名を入力してください。 ウェブアプリケーションの名前を変更するには(デフォルトは pswa)、 WebApplicationName パラメータを追加してください。

    以下の設定はコマンドレットを実行することで設定できます。 必要に応じてIISマネージャーコンソールで手動で変更できます。

    • 経路:/pswa
    • ApplicationPool: pswa_pool
    • EnabledProtocols: http
    • PhysicalPath: %windir%/Web/PowerShellWebAccess/wwwroot

    : Install-PswaWebApplication -webApplicationName myWebApp -useTestCertificate

    この例では、Windows PowerShell Web Accessのウェブサイトは https://<server_name>/myWebAppです。

    認証ルールを追加してウェブサイトへのアクセスが許可されるまでサインインできません。 詳細については、「 制限的認可ルールの設定 」および 「Windows PowerShell Web Accessの認証ルールとセキュリティ機能」をご覧ください。

Windows PowerShell Web Access Gateway を Install-PswaWebApplication および IIS Manager を使って本物の証明書で設定する方法

  1. WindowsのPowerShellセッションを開くには、以下のいずれかを行ってください。

    • Windowsデスクトップでは、タスクバーの Windows PowerShell を右クリックします。
    • Windows スタート 画面でWindows PowerShellをクリックします。
  2. 次のように入力し、 Enter キーを押します。

    Install-PswaWebApplication

    以下のゲートウェイ設定はコマンドレットを実行することで設定できます。 必要に応じてIISマネージャーコンソールで手動で変更できます。 また、Install-PswaWebApplicationコマンドレットのWebsiteNameパラメータやWebApplicationNameパラメータの値を指定することもできます。

    • 経路:/pswa
    • ApplicationPool: pswa_pool
    • EnabledProtocols: http
    • PhysicalPath: %windir%/Web/PowerShellWebAccess/wwwroot
  3. IISマネージャーコンソールを開くには、以下のいずれかを行ってください。

    • Windows デスクトップで、Windows タスク バーの [サーバー マネージャー] をクリックして サーバー マネージャー を起動します。 サーバーマネージャーの ツール メニューで「 インターネット情報サービス(IIS)マネージャー」をクリックします。
    • Windows のスタート 画面で「 サーバーマネージャー」をクリックします。
  4. IISマネージャーのツリーペインで、Windows PowerShell Web Accessがインストールされているサーバーのノードを展開し、 Sites フォルダが見えるまで続けます。 Sitesフォルダを展開します。

  5. Windows PowerShell Web Accessウェブアプリケーションをインストールしたウェブサイトを選択してください。 [操作] ウィンドウで、 [バインド]をクリックします。

  6. サイトバインディングダイアログボックスで「追加」をクリックします。

  7. Add Site Binding」 ダイアログボックスの Type フィールドで 、httpsを選択します。

  8. SSL証明書欄で、ドロップダウンメニューから署名済み証明書を選択します。 OK をクリックします。 証明書の取得方法については、このトピックの「 IISマネージャーでSSL証明書を設定する」 を参照してください。

    Windows PowerShell Web Accessのウェブアプリケーションは、署名済みのSSL証明書を使用するよう設定されています。

    Windows PowerShell Web Accessには、ブラウザウィンドウで https://<server_name>/pswa を開くことでアクセスできます。

    認証ルールを追加してウェブサイトへのアクセスが許可されるまでサインインできません。 詳細については、このトピックの「 制限的認可ルールの設定」および 「Windows PowerShell Web Accessの認証ルールとセキュリティ機能」をご覧ください。

制限的認可ルールの設定

Windows PowerShell Web Accessがインストールされ、ゲートウェイが設定された後、ユーザーはブラウザでサインインページを開くことができますが、Windows PowerShell Web Access管理者が明示的にアクセスを許可するまでサインインできません。 Windows PowerShellのWebアクセスアクセス制御は、以下の表に説明されているWindows PowerShellコマンドレットのセットを使用して管理されます。 認可ルールの追加や管理のための同等のGUIは存在しません。 Windows PowerShell Web Access コマンドレットの詳細については、コマンドレット参照トピック「 Windows PowerShell Web Access Cmdlet」をご覧ください。

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>

    この権限ルールにより、特定のユーザーは通常アクセス可能なネットワーク上の1台のコンピュータにアクセスし、その人の典型的なスクリプトやコマンドレットのニーズに合わせた特定のセッション構成にアクセスできます。

    以下の例では、Contosoドメイン内のJSmithという名前のユーザーがコンピュータContoso_214を管理し、NewAdminsOnlyというセッション構成を使用する権限を与えられます。

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

  4. ルールが作成されたかどうかは、 Get-PswaAuthorizationRule コマンドレットを実行して確認してください。 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が動作しているサーバーに、Server Managerの「役割と機能の追加ウィザード」を使ってWindows PowerShell Web Access Gateway をインストールすることができます。 Windows PowerShell Web Accessをインストールした後、IISマネージャーでゲートウェイの設定をカスタマイズできます。

Windows PowerShell Web Accessは「役割と機能の追加ウィザード」を使ってインストールします

  1. サーバー マネージャーを既に開いている場合は、次の手順に進んでください。 サーバー マネージャーをまだ開いていない場合は、次のいずれかの方法で開きます。

    • Windows デスクトップで、Windows タスク バーの [サーバー マネージャー] をクリックして サーバー マネージャー を起動します。
    • Windows のスタート 画面で「 サーバーマネージャー」をクリックします。
  2. 管理メニューで「役割と機能を追加」をクリックします。

  3. [インストールの種類の選択] ページで [役割ベースまたは機能ベースのインストール]を選択します。 [次へ] をクリックします。

  4. 「目的地サーバー選択」ページで、サーバープールからサーバーを選択するか、オフラインのVHDを選択してください。 オフラインのVHDを宛先サーバーとして選択するには、まずVHDをマウントするサーバーを選択し、その後VHDファイルを選択します。 サーバープールへのサーバー追加方法については、サーバーマネージャーヘルプをご覧ください。 宛先サーバーを選択したら、「 次へ」をクリックします。

  5. ウィザードの 「機能選択 」ページでWindows PowerShellを展開し、「 Windows PowerShell Web Access」を選択してください。

  6. .NET Framework 4.5やWeb Server(IIS)の役割サービスなど、必要な機能の追加を求めるよう促されます。 必要な機能を追加して続けてください。

    Windows PowerShell Web Accessは「役割と機能の追加ウィザード」を使ってインストールすると、IISマネージャーのスナップインを含むWeb Server(IIS)もインストールされます。 「役割と機能の追加ウィザード」を使うと、スナップインやその他のIIS管理ツールはデフォルトでインストールされます。 以下の手順で説明されているWindows PowerShellコマンドレットを使ってWindows PowerShell Web Accessをインストールする場合、管理ツールはデフォルトで追加されません。

  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のウェブアプリケーションをサブディレクトリにインストールするためのもので、ウェブサイトのルートディレクトリにはインストールしません。 この手続きは、 Install-PswaWebApplication コマンドレットが実行するアクションのGUIベースの同等物です。 このセクションには、IIS Managerを使ってWindows PowerShell Web Accessゲートウェイをルートサイトとして設定する方法も含まれています。

既存のウェブサイトでゲートウェイを設定するためにIISマネージャーを使う方法

  1. IISマネージャーコンソールを開くには、以下のいずれかを行ってください。

    • Windows デスクトップで、Windows タスク バーの [サーバー マネージャー] をクリックして サーバー マネージャー を起動します。 サーバーマネージャーの ツール メニューで「 インターネット情報サービス(IIS)マネージャー」をクリックします。
    • Windows のスタート 画面で、 名前の任意の部分を入力してください。 アプリの結果に表示されるショートカットをクリックしてください。
  2. Windows PowerShell Web Access用の新しいアプリケーションプールを作成します。 IISマネージャーツリーペインでゲートウェイサーバーのノードを展開し、「アプリケーションプール」を選択し、「アクションペイン」で「アプリケーションプールを追加」をクリックします。

  3. 新しい応募プールを pswa_pool名で追加するか、別の名前を付けてください。 OK をクリックします。

  4. IISマネージャーのツリーペインで、Windows PowerShell Web Accessがインストールされているサーバーのノードを展開し、 Sites フォルダが見えるまで続けます。 「 Sites 」フォルダを選択します。

  5. Windows PowerShell Web Accessのウェブサイトを追加したいウェブサイト(例: Default Web Site)を右クリックし、「 アプリケーションを追加」をクリックします。

  6. エイリアス欄でpswaと入力するか、別のエイリアスを入力してください。 エイリアスは仮想ディレクトリ名となります。 例えば、以下のURLの pswa は、このステップで指定されたエイリアスを表します: https://<server-name>/pswa

  7. アプリケーションプール欄で、ステップ3で作成したアプリケーションプールを選択します。

  8. 物理パスフィールドでアプリケーションの場所をブラウズします。 デフォルトの場所を使えます $env:windir/Web/PowerShellWebAccess/wwwrootOK をクリックします。

  9. このトピックの手順に従って、 IISマネージャーでSSL証明書を設定する 方法をご参照ください。

  10. オプションのセキュリティ対策:

    ツリーペインでウェブサイトを選択し、コンテンツペインの 「SSL設定 」をダブルクリックします。 「SSLの必須」を選択し、アクションペインで「適用」をクリックします。 オプションとして、 SSL設定 のペインで、Windows PowerShell Web Accessのウェブサイトに接続するユーザーにクライアント証明書を要求することもできます。 クライアント証明書はクライアントデバイスのユーザーの本人確認に役立ちます。 クライアント証明書の義務化がWindows PowerShell Web Accessのセキュリティを高める方法についての詳細は、このガイドの「 Windows PowerShell Web Accessの認可ルールおよびセキュリティ機能 」をご覧ください。

  11. クライアントデバイスでブラウザセッションを開きます。 サポートされているブラウザやデバイスの詳細については、このトピックの 「ブラウザおよびクライアントデバイスサポート 」をご覧ください。

  12. 新しいWindows PowerShell Web Accessウェブサイト https://<gateway-server-name>/pswa を開きます。

    ブラウザはWindows PowerShell Web Accessコンソールのサインインページを表示するはずです。

    認証ルールを追加してウェブサイトへのアクセスが許可されるまでサインインできません。 詳細については、このトピックの「 制限的認可ルールの設定」および 「Windows PowerShell Web Accessの認証ルールとセキュリティ機能」をご覧ください。

  13. 昇格されたユーザー権限(管理者として実行)で開かれたWindows PowerShellセッションでは、ステップ3で作成したアプリケーションプールの名前を表す以下の application_pool_name スクリプトを実行し、その承認ファイルへのアクセス権をアプリケーションプールに与えます。

    $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マネージャーを使ってゲートウェイをルートウェブサイトとして設定し、テスト証明書を付与する方法

  1. IISマネージャーコンソールを開くには、以下のいずれかを行ってください。

    • Windows デスクトップで、Windows タスク バーの [サーバー マネージャー] をクリックして サーバー マネージャー を起動します。 サーバーマネージャーの ツール メニューで「 インターネット情報サービス(IIS)マネージャー」をクリックします。
    • Windows のスタート 画面で、 名前の任意の部分を入力してください。 アプリの結果に表示されるショートカットをクリックしてください。
  2. IISマネージャーのツリーペインで、Windows PowerShell Web Accessがインストールされているサーバーのノードを展開し、 Sites フォルダが見えるまで続けます。 「 Sites 」フォルダを選択します。

  3. アクションペインで「ウェブサイトを追加」をクリックします。

  4. ウェブサイトの名前を入力してください。例えばWindows PowerShell Web Accessです。

  5. 新しいウェブサイト用に自動的にアプリケーションプールが作成されます。 別のアプリケーションプールを使用するには、「 選択 」をクリックして新しいウェブサイトに関連付けるアプリケーションプールを選択してください。 「 アプリケーションプール選択 」ダイアログボックスで代替アプリケーションプールを選択し、 OKをクリックします。

  6. 物理パスのテキストボックスで /Web/PowerShellWebAccess/wwwroot %windir%に移動します。

  7. バインディングエリアのタイプフィールドで https を選択してください。

  8. 他のサイトやアプリケーションで既に利用されていないポート番号をウェブサイトに割り当てます。 開いているポートを見つけるには、コマンドプロンプトウィンドウで netstat コマンドを実行することができます。 デフォルトのポート番号は443です。

    他のウェブサイトがすでに443を使っている場合や、他のセキュリティ上の理由でポート番号を変更する場合は、デフォルトのポートを変更してください。 もしあなたのゲートウェイサーバー上で他のウェブサイトがあなたの選択したポートを使っている場合、「ウェブサイトを追加」ダイアログボックスでOKをクリックすると警告が表示されます。 Windows PowerShell Web Accessを実行するには、未使用のポートを使う必要があります。

  9. 必要に応じて、組織やユーザーにとって意味のあるホスト名(例えば www.contoso.com)を指定することも可能です。 OK をクリックします。

  10. より安全な本番環境のためには、CAによって署名された有効な証明書の提供を強く推奨します。 SSL証明書の提供が必要です。なぜなら、ユーザーはHTTPSウェブサイトを通じてしかWindows PowerShell Web Accessに接続できないからです。 証明書の取得方法については、このトピックの「 IISマネージャーでSSL証明書を設定する」 を参照してください。

  11. 「OK」をクリックして「ウェブサイト追加」ダイアログボックスを閉じます。

  12. ユーザー権限を昇格して開いたWindows PowerShellセッション(管理者として実行)では、ステップ4で作成したアプリケーションプールの名前を表す次の application_pool_name スクリプトを実行し、その認証ファイルに対するアクセス権をアプリケーションプールに付与します。

    $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マネージャーツリーのペインで新しいウェブサイトを選択し、アクションペインの「スタート」をクリックしてウェブサイトを起動します。

  14. クライアントデバイスでブラウザセッションを開きます。 サポートされているブラウザやデバイスの詳細については、このドキュメントの ブラウザおよびクライアントデバイスサポート を参照してください。

  15. 新しいWindows PowerShell Web Accessのウェブサイトを開きます。

    ルートサイトがWindows PowerShell Web Accessフォルダを指すため、ブラウザは https://<gateway_server_name>を開くときにWindows PowerShell Web Accessのサインインページを表示するはずです。 URLに /pswa を追加する必要はないはずです。

    認証ルールを追加してウェブサイトへのアクセスが許可されるまでサインインできません。 詳細については、このトピックの「 制限的認可ルールの設定」および 「Windows PowerShell Web Accessの認証ルールとセキュリティ機能」をご覧ください。

制限的認可ルールの設定

Windows PowerShell Web Accessがインストールされ、ゲートウェイが設定された後、ユーザーはブラウザでサインインページを開くことができますが、Windows PowerShell Web Access管理者が明示的にアクセスを許可するまでサインインできません。 Windows PowerShellのWebアクセスアクセス制御は、以下の表に説明されているWindows PowerShellコマンドレットのセットを使用して管理されます。 認可ルールの追加や管理のための同等のGUIは存在しません。 Windows PowerShell Web Access コマンドレットの詳細については、コマンドレット参照トピック「 Windows PowerShell Web Access Cmdlet」をご覧ください。

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>

    この権限ルールにより、特定のユーザーは通常アクセス可能なネットワーク上の1台のコンピュータにアクセスし、その人の™典型的なスクリプトやコマンドレットのニーズに合わせた特定のセッション構成にアクセスできます。

    以下の例では、Contosoドメイン内のJSmithという名前のユーザーがコンピュータContoso_214を管理し、NewAdminsOnlyというセッション構成を使用する権限を与えられます。

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

  4. ルールが作成されたか、または Get-PswaAuthorizationRule コマンドレットを実行するか 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マネージャーでSSL証明書を設定する

  1. IISマネージャーツリーのペインで、Windows PowerShell Web Accessがインストールされているサーバーを選択します。

  2. コンテンツペインで 「Server Certificates」をダブルクリックします。

  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マネージャーツリーペインで証明書が適用されるウェブサイト(例:デフォルトウェブサイト)を選択し、アクションペインの「バインディング」をクリックします。

  5. サイトバインディングを追加 」ダイアログボックスで、まだ表示されていない場合は サイト用のHTTPS バインディングを追加してください。 自己署名証明書を使用していない場合は、この手順のステップ3でホスト名を指定してください。 自己署名証明書を使用している場合は、このステップは必須ではありません。

  6. この手順のステップ3で取得または作成した証明書を選択し、 OKをクリックします。

ウェブベースのWindows PowerShellコンソールの使用

Windows PowerShell Web Accessがインストールされ、このトピックで説明した通りゲートウェイ設定が完了すると、Windows PowerShellのウェブベースのコンソールは使用可能になります。 ウェブベースのコンソールでの開始方法の詳細については、「 Web ベースのWindows PowerShellコンソールの使用」をご覧ください。

こちらもご覧ください

インターネット情報サービス(IIS)7.0 ドキュメント

IISマネージャー7.0のヘルプ

ウェブサーバーセキュリティの設定(IIS 7)

IPsec展開リソース