Analysis Services または PowerPivot for SharePoint をネットワークで使用できるようにするための重要な最初の手順は、ファイアウォールのポートのブロックを解除する必要があるかどうかを判断することです。 ほとんどのインストールでは、Analysis Services への接続を許可する、少なくとも 1 つのインバインド ファイアウォール規則を作成する必要があります。
ファイアウォールの構成要件は、Analysis Services のインストール方法によって異なります。
既定のインスタンスをインストールするとき、または Analysis Services フェールオーバー クラスターを作成するときに TCP ポート 2383 を開きます。
名前付きインスタンスをインストールするときに TCP ポート 2382 を開きます。 名前付きインスタンスでは動的ポートの割り当てが使用されます。 Analysis Services の探索サービスとして、SQL Server Browser サービスは TCP ポート 2382 をリッスンし、Analysis Services で現在使用されているポートに接続要求をリダイレクトします。
SharePoint モードで Analysis Services をインストールするときに TCP ポート 2382 を開き、PowerPivot for SharePoint 2013 をサポートします。 PowerPivot for SharePoint 2013 では、Analysis Services インスタンスは SharePoint の外部にあります。 名前付き 'PowerPivot' インスタンスへの受信要求は、ネットワーク接続経由の SharePoint Web アプリケーションから送信され、開いているポートが必要です。 他の Analysis Services の名前付きインスタンスと同様に、SQL Server Browser サービスの受信規則を TCP 2382 で作成し、PowerPivot for SharePoint へのアクセスを許可します。
PowerPivot for SharePoint 2010 では、Windows ファイアウォールでポートを開かないでください。 SharePoint のアドインとして、サービスは SharePoint 用に構成されたポートを使用し、PowerPivot データ モデルを読み込んでクエリを実行する Analysis Services インスタンスへのローカル接続のみを行います。
Azure Virtual Machines で実行されている Analysis Services インスタンスの場合は、サーバー アクセスを構成するための別の手順を使用します。 Azure Virtual Machines の SQL Server Business Intelligence に関するページを参照してください。
Analysis Services の既定のインスタンスは TCP ポート 2383 でリッスンしますが、別の固定ポートでリッスンするようにサーバーを構成し、サーバーに接続する形式は <servername>:<portnumber>。
Analysis Services インスタンスで使用できる TCP ポートは 1 つだけです。 複数のネットワーク カードまたは複数の IP アドレスを持つコンピューターでは、Analysis Services は、コンピューターに割り当てられている、またはエイリアス化されたすべての IP アドレスについて、1 つの TCP ポートでリッスンします。 特定のマルチポート要件がある場合は、HTTP アクセス用に Analysis Services を構成することを検討してください。 その後、選択したポートに複数の HTTP エンドポイントを設定できます。 インターネット インフォメーション サービス (IIS) 8.0 での Analysis Services への HTTP アクセスの構成を参照してください。
このトピックには、次のセクションが含まれています。
Windows ファイアウォールの既定の設定の詳細と、データベース エンジン、Analysis Services、Reporting Services、および Integration Services に影響する TCP ポートの説明については、「 SQL Server のアクセスを許可するための Windows ファイアウォールの構成」をご覧ください。
Analysis Services のポートとファイアウォールの設定を確認する
SQL Server 2014 でサポートされている Microsoft Windows オペレーティング システムでは、Windows ファイアウォールは既定でオンであり、リモート接続をブロックしています。 Analysis Services への受信要求を許可するには、ファイアウォールでポートを手動で開く必要があります。 SQL Server セットアップでは、この手順は実行されません。
ポート設定は、msmdsrv.ini ファイルと SQL Server Management Studio の Analysis Services インスタンスの [全般] プロパティ ページで指定します。
Port
が正の整数に設定されている場合、サービスは固定ポートでリッスンしています。
Port
が 0 に設定されている場合、サービスは既定のインスタンスである場合はポート 2383 でリッスンし、名前付きインスタンスの場合は動的に割り当てられたポートでリッスンします。
動的ポートの割り当ては、名前付きインスタンスでのみ使用されます。
MSOLAP$InstanceName
サービスは、起動時に使用するポートを決定します。 名前付きインスタンスで使用されている実際のポート番号は、次の手順で確認できます。
タスク マネージャーを起動し、[ サービス ] をクリックして、
MSOLAP$InstanceName
の PID を取得します。コマンド ラインから
netstat -ao -p TCP
を実行して、その PID の TCP ポート情報を表示します。SQL Server Management Studio を使用してポートを確認し、次の形式で Analysis Services サーバーに接続します: <IPAddress>:<portnumber>。
アプリケーションが特定のポートでリッスンしている可能性がありますが、ファイアウォールがアクセスをブロックしている場合、接続は成功しません。 名前付き Analysis Services インスタンスに接続するためには、ファイアウォールでリッスンしている msmdsrv.exe かその定義されたポートへのアクセスを解除する必要があります。 このトピックの残りのセクションでは、その手順について説明します。
Analysis Services のファイアウォール設定が既に定義されているかどうかを確認するには、コントロール パネルでセキュリティが強化された Windows ファイアウォールを使用します。 [監視] フォルダーの [ファイアウォール] ページには、ローカル サーバーに対して定義されている規則の完全な一覧が表示されます。
Analysis Services の場合、すべてのファイアウォール規則を手動で定義する必要があることに注意してください。 Analysis Services と SQL Server Browser はポート 2382 と 2383 を予約しますが、SQL Server セットアップ プログラムも構成ツールのいずれも、ポートまたはプログラム実行可能ファイルへのアクセスを許可するファイアウォール規則を定義しません。
Analysis Services の既定のインスタンス用に Windows ファイアウォールを構成する
Analysis Services の既定のインスタンスは、TCP ポート 2383 でリッスンします。 既定のインスタンスをインストールし、このポートを使用する場合は、Analysis Services の既定のインスタンスへのリモート アクセスを有効にするために、Windows ファイアウォールの TCP ポート 2383 への受信アクセスのブロックを解除するだけで済みます。 既定のインスタンスをインストールしたが、固定ポートでリッスンするようにサービスを構成する場合は、このトピックの 「Analysis Services の既定または名前付きインスタンスに固定ポートを使用 する」を参照してください。
サービスが既定のインスタンス (MSSQLServerOLAPService) として実行されているかどうかを確認するには、SQL Server 構成マネージャーでサービス名を確認します。 Analysis Services の既定のインスタンスは、常に SQL Server Analysis Services (MSSQLSERVER) として一覧表示されます。
注
さまざまな Windows オペレーティング システムには、Windows ファイアウォールを構成するための代替ツールが用意されています。 これらのツールのほとんどは、特定のポートまたはプログラム実行可能ファイルを開くかどうかを選択できます。 プログラム実行可能ファイルを指定する理由がない限り、ポートを指定することをお勧めします。
受信規則を指定するときは、後で規則を簡単に見つけることができる名前付け規則を必ず採用してください (例: SQL Server Analysis Services (TCP-in) 2383)。
セキュリティが強化された Windows ファイアウォール
Windows 7 または Windows Vista のコントロール パネルで、[ システムとセキュリティ] をクリックし、[ Windows ファイアウォール] を選択し、[ 詳細設定] をクリックします。 Windows Server 2008 または 2008 R2 で、[管理者ツール] を開き、[ セキュリティが強化された Windows ファイアウォール] をクリックします。 Windows Server 2012 で、[アプリケーション] ページを開き、「 Windows ファイアウォール」と入力します。
[受信規則] を右クリックし、[新しい規則] を選択します。
[ルールの種類] で、[
Port
] をクリックし、[ 次へ] をクリックします。[プロトコルとポート] で、[TCP] を選択し、[特定のローカル ポート] に「
2383
」と入力します。[アクション] で、[ 接続を許可する ] をクリックし、[ 次へ] をクリックします。
[プロファイル] で、適用されないネットワークの場所をすべてクリアし、[ 次へ] をクリックします。
[名前] に、この規則のわかりやすい名前 (
SQL Server Analysis Services (tcp-in) 2383
など) を入力し、[ 完了] をクリックします。リモート接続が有効になっていることを確認するには、別のコンピューターで SQL Server Management Studio または Excel を開き、[ サーバー名] でサーバーのネットワーク名を指定して Analysis Services に接続します。
注
アクセス許可を付与するまで、他のユーザーはこのサーバーにアクセスできません。 詳細については、「 オブジェクトと操作へのアクセスの承認 (Analysis Services)」を参照してください。
Netsh AdvFirewall 構文
次のコマンドは、TCP ポート 2383 で受信要求を許可する受信規則を作成します。
netsh advfirewall firewall add rule name="SQL Server Analysis Services inbound on TCP 2383" dir=in action=allow protocol=TCP localport=2383 profile=___domain
Analysis Services の名前付きインスタンスの Windows ファイアウォール アクセスを構成する
Analysis Services の名前付きインスタンスは、固定ポートまたは動的に割り当てられたポートでリッスンできます。SQL Server Browser サービスは、接続時にサービスの現在の接続情報を提供します。
SQL Server Browser サービスは TCP ポート 2382 でリッスンします。 UDP は使用されません。 TCP は、Analysis Services で使用される唯一の伝送プロトコルです。
Analysis Services の名前付きインスタンスへのリモート アクセスを有効にするには、次のいずれかの方法を選択します。
動的ポートの割り当てと SQL Server Browser サービスを使用します。 Windows ファイアウォールで SQL Server Browser サービスによって使用されるポートのブロックを解除します。 <servername>\<instancename> の形式でサーバーに接続します。
固定ポートと SQL Server Browser サービスを一緒に使用します。 このアプローチでは、<servername>\<instancename> という形式を使用して接続できます。この場合、違いはサーバーが固定ポートでリッスンする点です。 このシナリオでは、SQL Server Browser Service によって、固定ポートでリッスンしている Analysis Services インスタンスに名前解決が提供されます。 この方法を使用するには、固定ポートでリッスンするようにサーバーを構成し、そのポートへのアクセスのブロックを解除し、SQL Server Browser サービスで使用されるポートへのアクセスのブロックを解除します。
SQL Server Browser サービスは、名前付きインスタンスでのみ使用され、既定のインスタンスでは使用されません。 SQL Server 機能を名前付きインスタンスとしてインストールするたびに、サービスが自動的にインストールされ、有効になります。 SQL Server Browser サービスを必要とするアプローチを選択する場合は、サーバーで有効にして起動したままにしてください。
SQL Server Browser サービスを使用できない場合は、ドメイン名解決をバイパスして、接続文字列に固定ポートを割り当てる必要があります。 SQL Server Browser サービスを使用しない場合、すべてのクライアント接続に接続文字列のポート番号 (AW-SRV01:54321 など) を含める必要があります。
オプション 1: 動的ポートの割り当てを使用し、SQL Server Browser サービスへのアクセスのブロックを解除する
Analysis Services の名前付きインスタンスの動的ポート割り当ては、サービスの開始時に MSOLAP$InstanceName
によって確立されます。 既定では、サービスは、サービスが再起動されるたびに異なるポート番号を使用して、検出された最初の使用可能なポート番号を要求します。
インスタンスの名前解決は、SQL Server ブラウザー サービスによって処理されます。 名前付きインスタンスで動的ポート割り当てを使用している場合は、SQL Server Browser サービスの TCP ポート 2382 のブロックを解除する必要があります。
注
SQL Server Browser サービスは、データベース エンジンと Analysis Services の UDP ポート 1434 と TCP ポート 2382 の両方でリッスンします。 SQL Server Browser サービスの UDP ポート 1434 のブロックを既に解除している場合でも、Analysis Services の TCP ポート 2382 のブロックを解除する必要があります。
セキュリティが強化された Windows ファイアウォール
Windows 7 または Windows Vista のコントロール パネルで、[ システムとセキュリティ] をクリックし、[ Windows ファイアウォール] を選択し、[ 詳細設定] をクリックします。 Windows Server 2008 または 2008 R2 で、[管理者ツール] を開き、[ セキュリティが強化された Windows ファイアウォール] をクリックします。 Windows Server 2012 で、[アプリケーション] ページを開き、「 Windows ファイアウォール」と入力します。
SQL Server Browser サービスへのアクセスのブロックを解除するには、[ 受信規則 ] を右クリックし、[ 新しい規則] を選択します。
[ルールの種類] で、[
Port
] をクリックし、[ 次へ] をクリックします。[プロトコルとポート] で、[TCP] を選択し、[特定のローカル ポート] に「
2382
」と入力します。[アクション] で、[ 接続を許可する ] をクリックし、[ 次へ] をクリックします。
[プロファイル] で、適用されないネットワークの場所をすべてクリアし、[ 次へ] をクリックします。
[名前] に、この規則のわかりやすい名前 (
SQL Server Browser Service (tcp-in) 2382
など) を入力し、[ 完了] をクリックします。リモート接続が有効になっていることを確認するには、別のコンピューターで SQL Server Management Studio または Excel を開き、サーバーのネットワーク名とインスタンス名を次の形式で指定して Analysis Services に接続します: <servername>\<instancename>。 たとえば、Finance の名前付きインスタンスを持つ AW-SRV01 という名前のサーバーでは、サーバー名は AW-SRV01\Finance です。
オプション 2: 名前付きインスタンスに固定ポートを使用する
または、固定ポートを割り当ててから、そのポートへのアクセスのブロックを解除することもできます。 この方法では、プログラム実行可能ファイルへのアクセスを許可した場合よりも優れた監査機能が提供されます。 このため、Analysis Services インスタンスにアクセスする場合は、固定ポートを使用することをお勧めします。
固定ポートを割り当てるには、このトピックの 「Analysis Services の既定または名前付きインスタンスに固定ポートを使用 する」の手順に従って、このセクションに戻ってポートのブロックを解除します。
セキュリティが強化された Windows ファイアウォール
Windows 7 または Windows Vista のコントロール パネルで、[ システムとセキュリティ] をクリックし、[ Windows ファイアウォール] を選択し、[ 詳細設定] をクリックします。 Windows Server 2008 または 2008 R2 で、[管理者ツール] を開き、[ セキュリティが強化された Windows ファイアウォール] をクリックします。 Windows Server 2012 で、[アプリケーション] ページを開き、「 Windows ファイアウォール」と入力します。
Analysis Services へのアクセスのブロックを解除するには、[ 受信規則 ] を右クリックし、[ 新しい規則] を選択します。
[ルールの種類] で、[
Port
] をクリックし、[ 次へ] をクリックします。[プロトコルとポート] で、[ TCP ] を選択し、[ 特定のローカル ポート] に固定ポートを入力します。
[アクション] で、[ 接続を許可する ] をクリックし、[ 次へ] をクリックします。
[プロファイル] で、適用されないネットワークの場所をすべてクリアし、[ 次へ] をクリックします。
[名前] に、この規則のわかりやすい名前 (
SQL Server Analysis Services on port 54321
など) を入力し、[ 完了] をクリックします。リモート接続が有効になっていることを確認するには、別のコンピューターで SQL Server Management Studio または Excel を開き、サーバーのネットワーク名とポート番号 ( <servername>:<portnumber> の形式で指定して Analysis Services に接続します。
Netsh AdvFirewall 構文
次のコマンドは、SQL Server Browser サービスの TCP 2382 のブロックを解除し、Analysis Services インスタンスに指定した固定ポートのブロックを解除する受信規則を作成します。 いずれか 1 つを実行して、名前付き Analysis Services インスタンスへのアクセスを許可できます。
このサンプル コマンドでは、ポート 54321 が固定ポートです。 必ず、システムで使用されている実際のポートに置き換えてください。
netsh advfirewall firewall add rule name="SQL Server Analysis Services (tcp-in) on 54321" dir=in action=allow protocol=TCP localport=54321 profile=___domain
netsh advfirewall firewall add rule name="SQL Server Browser Services inbound on TCP 2382" dir=in action=allow protocol=TCP localport=2382 profile=___domain
Analysis Services の既定または名前付きインスタンスに固定ポートを使用する
このセクションでは、固定ポートでリッスンするように Analysis Services を構成する方法について説明します。 固定ポートの使用は、Analysis Services を名前付きインスタンスとしてインストールした場合に一般的ですが、ビジネス要件またはセキュリティ要件で既定以外のポート割り当てを使用することが指定されている場合にも、この方法を使用できます。
固定ポートを使用すると、サーバー名にポート番号を追加する必要があり、既定のインスタンスの接続構文が変更されることに注意してください。 たとえば、SQL Server Management Studio のポート 54321 でリッスンしているローカルの既定の Analysis Services インスタンスに接続するには、Management Studio の [サーバーへの接続] ダイアログ ボックスで、サーバー名として localhost:54321 を入力する必要があります。
名前付きインスタンスを使用している場合は、サーバー名の指定方法を変更せず、固定ポートを割り当てることができます (具体的には、 <servername\instancename> を使用して、固定ポートでリッスンしている名前付きインスタンスに接続できます)。 これは、SQL Server Browser サービスが実行されていて、リッスンしているポートのブロックを解除した場合にのみ機能します。 SQL Server Browser サービスは、 <servername\instancename> に基づいて、固定ポートへのリダイレクトを提供します。 SQL Server Browser サービスと固定ポートでリッスンしている Analysis Services の名前付きインスタンスの両方のポートを開く限り、SQL Server Browser サービスは名前付きインスタンスへの接続を解決します。
使用できる TCP/IP ポートを決定します。
使用しないようにする必要がある予約済みポートと登録済みポートの一覧を表示するには、「 ポート番号 (IANA)」を参照してください。 システムで既に使用されているポートの一覧を表示するには、コマンド プロンプト ウィンドウを開き、「
netstat -a -p TCP
」と入力して、システムで開いている TCP ポートの一覧を表示します。使用するポートを決定したら、msmdsrv.ini ファイルまたは SQL Server Management Studio の Analysis Services インスタンスの [全般] プロパティ ページで、
Port
構成設定を編集してポートを指定します。サービスを再起動します。
指定した TCP ポートのブロックを解除するように Windows ファイアウォールを構成します。 または、名前付きインスタンスに固定ポートを使用している場合は、そのインスタンスに指定した TCP ポートと SQL Server Browser サービスの TCP ポート 2382 の両方のブロックを解除します。
(Management Studio で) ローカルに接続してから、別のコンピューター上のクライアント アプリケーションからリモートで接続して確認します。 Management Studio を使用するには、サーバー名を <servername>:<portnumber> の形式で指定して、Analysis Services の既定のインスタンスに接続します。 名前付きインスタンスの場合は、サーバー名を <servername>\<instancename> として指定します。
Analysis Services クラスターのポート構成
Analysis Services フェールオーバー クラスターは、既定のインスタンスと名前付きインスタンスのどちらとしてインストールしたかに関係なく、常に TCP ポート 2383 でリッスンします。 動的ポートの割り当ては、Windows フェールオーバー クラスターにインストールされている場合、Analysis Services では使用されません。 クラスター内の Analysis Services を実行しているすべてのノードで TCP 2383 を開きます。 Analysis Services のクラスタリングの詳細については、「 SQL Server Analysis Services をクラスター化する方法」を参照してください。
PowerPivot for SharePoint のポート構成
PowerPivot for SharePoint のサーバー アーキテクチャは、使用している SharePoint のバージョンによって根本的に異なります。
SharePoint 2013
SharePoint 2013 では、Excel Services は Power Pivot データ モデルの要求をリダイレクトします。その後、SharePoint 環境の外部にある Analysis Services インスタンスに読み込まれます。 接続は一般的なパターンに従います。ローカル コンピューター上の Analysis Services クライアント ライブラリは、同じネットワーク内のリモート Analysis Services インスタンスに接続要求を送信します。
PowerPivot for SharePoint は、常に Analysis Services を名前付きインスタンスとしてインストールするため、SQL Server Browser サービスと動的ポートの割り当てを想定する必要があります。 前述のように、SQL Server Browser サービスは TCP ポート 2382 で Analysis Services の名前付きインスタンスに送信された接続要求をリッスンし、要求を現在のポートにリダイレクトします。
SharePoint 2013 の Excel Services は固定ポート接続構文をサポートしていないため、SQL Server Browser サービスにアクセスできることを確認してください。
SharePoint 2010
SharePoint 2010 を使用している場合は、Windows ファイアウォールでポートを開く必要はありません。 SharePoint は必要なポートを開き、PowerPivot for SharePoint などのアドインは SharePoint 環境内で動作します。 PowerPivot for SharePoint 2010 のインストールでは、PowerPivot システム サービスは、同じコンピューターにインストールされているローカル SQL Server Analysis Services (PowerPivot) サービス インスタンスを排他的に使用します。 ネットワーク接続ではなくローカル接続を使用して、SharePoint サーバー上の PowerPivot データを読み込み、クエリし、処理するローカル Analysis Services エンジン サービスにアクセスします。 クライアント アプリケーションから PowerPivot データを要求するには、SharePoint セットアップによって開かれたポートを介して要求がルーティングされます (具体的には、受信規則は、SharePoint - 80、SharePoint サーバーの全体管理 v4、SharePoint Web サービス、SPUserCodeV4 へのアクセスを許可するように定義されています)。 PowerPivot Web サービスは SharePoint ファーム内で実行されるため、SharePoint ファーム内の PowerPivot データへのリモート アクセスには SharePoint ファイアウォール規則で十分です。
こちらもご覧ください
SQL Server Browser サービス (データベース エンジンと SSAS)
データベース エンジン、SQL Server エージェント、SQL Server Browser サービスの開始、停止、一時停止、再開、および再起動
データベース エンジン アクセスを有効にするための Windows ファイアウォールを構成する