Share via


高度なエクストラネット サポート

最終更新日: 2010年4月30日

適用対象: SharePoint Foundation 2010

Microsoft SharePoint Foundation には、クライアント コンピューターと SharePoint Foundation を実行している Web サーバーの間にリバース プロキシ サーバーを実装する必要がある場合に、送受信 URL を作成および管理するためのオブジェクト モデルが用意されています。受信 URL は、SharePoint Foundation を実行している Web サーバーに要求が到達したときの要求の URL です。SharePoint Foundation では、アプリケーション層プロトコル (HTTP または HTTPS)、HTTP パケット内のホスト ヘッダー、および TCP パケットの宛先ポートを調べて、この URL を決定します。送信 URL は、SharePoint Foundation がユーザーに返すページ上に生成したリンクで使用する絶対ベース URL です。

内部 (企業または組織内) と外部 (エクストラネットまたはインターネット) の両方を同じ SharePoint サイトでサポートする必要がある場合などに、リバース プロキシ構成が必要となることがあります。そのような場合は、2 つのサーバーで同じコンテンツを共有し、リバース プロキシを外部向けのサーバーだけに適用します。内部向けサーバーには HTTP で直接アクセスできますが、外部向けサーバーにはリバース プロキシ サーバーへの SSL (Secure Sockets Layer) 要求によってのみ到達できます。

高度なエクストラネット サポートでは、以下のリバース プロキシ構成に対応できます。

  • SSL の終了 - ユーザーは、URL 内でプロトコルに https を指定して SharePoint サイトにアクセスします。リバース プロキシ サーバーは、SSL 要求を受信すると、それを HTTP 要求 (http) に変換し、SharePoint Foundation を実行しているサーバーに変換した要求を転送します。

  • ホスト ヘッダーの変更 - Web 要求を生成するアプリケーションは、ホスト ヘッダーと呼ばれるヘッダーを要求に含めます。HTTP ホスト ヘッダーは、ユーザーが URL に入力したホストを識別します。この構成では、ユーザーは、http://www.example.com のような URL を使用して SharePoint サイトにアクセスします。この場合のホストは www.example.com です。リバース プロキシ サーバーは、要求を受信すると、ホスト ヘッダーを sharepoint.internal.example.com のような SharePoint Foundation を実行しているサーバーの内部名に変換し、サーバーに要求を転送します。

  • ポートの変換 - ユーザーは、特定のポート番号 (たとえば、HTTP 要求ではポート 80) を使用して SharePoint サイトにアクセスします。リバース プロキシ サーバーは、要求を受信すると、SharePoint Foundation を実行しているサーバーに 1234 のような異なるポートで要求を転送します。

このいずれの場合も、リバース プロキシ サーバーは、元の要求の URL を異なる URL に変更します。高度なエクストラネット サポートが追加される前は、SharePoint Foundation では、受信する受信 URL は要求の元の URL であると仮定していました。このため、ユーザーに返すページ上に生成するリンクでは、受信 URL を絶対 URL として使用していましたが、これはユーザーにとっては正しい URL ではありませんでした。高度なエクストラネット サポートにより、SharePoint Foundation は、ユーザーに返すページ上に生成するリンクで、異なるプロトコル、ホスト名、およびポート番号を使用できるようになりました。

リバース プロキシ サーバーは、クライアント コンピューターから特定の URL の要求を受信すると、SharePoint Foundation を実行している Web サーバーのために、要求を異なる URL に再マッピングします。たとえば、https://www.example.com/sites/Site/default.aspx という要求を受信した場合は、要求を http://nn.nn.nnn.nn/sites/Site/default.aspx として Web サーバーに転送します。高度なエクストラネット サポートでは、SharePoint Foundation をカスタマイズして、ページ上のすべてのリンクで同じ元の URL ベース (たとえば、https://www.example.com) で返すようにすることができます。

注意

高度なエクストラネット サポートは、コンテンツ Web アプリケーションにのみ適用され、SharePoint サーバーの全体管理の Web サイトまたは Web アプリケーションには適用されません。

SharePoint Foundation は、リバース プロキシ サーバーから受信したパケットを調べ、要求 URL または受信 URL のプロトコル、ホスト名、およびポート番号を取り出します。次に、2 つのテーブルを使用して、返す URL の正しいベースを決定します。このとき、1 つのテーブルで、各受信 URL を特定のゾーンにマッピングし、もう 1 つのテーブルで各ゾーンを特定の送信 URL にマッピングします。SharePoint Foundation は、テーブルを使用して見つけた送信ベース URL を使用して、ページに表示される URL を書き換えます。

ゾーンにより、SharePoint Foundation がリバース プロキシ サーバーから受信した受信 URL は、ユーザーに返すページ上に生成するリンクで使用する送信 URL にマッピングされます。各仮想サーバーのイントラネット、インターネット、エクストラネット、カスタム、および既定という 5 つのゾーンは、SharePoint サイトへのアクセス方法を表します。各ゾーンはいくつでも受信 URL を持つことができますが、各ゾーンの送信 URL は 1 つだけです。

Microsoft.SharePoint.Administration 名前空間の以下の型は、仮想サーバー上で代替要求 URL を作成および管理する手段を提供します。

SPUtility クラスの AlternateServerUrlFromHttpRequestUrl メソッドは、指定された受信 URL に関連付けられている送信 URL を返します。

SharePoint Foundation は、明示的な管理対象パスあるいはワイルド カードを使用した管理対象パスのために管理パスを定義することができます。管理パスを定義する方法と、リバース プロキシ サーバーを使用する方法の管理ガイダンスについては、「代替アクセス マッピングを計画する (Office SharePoint Server)」を参照してください。