Team Foundation Server の信頼とフォレストに関する考慮事項
更新 : 2007 年 11 月
Team Foundation Server は、異なるドメイン、さらには異なるフォレストのグループ間のコラボレーションの基礎となります。以下のいくつかの重要なガイドラインに従うと、サーバーおよびドメインのセキュリティおよび安定性を確保できます。Team Foundation のアプリケーション層とデータ層は同じドメイン内に存在するのが理想ですが、接続するクライアントは別のドメインに存在してかまいません。
Team Foundation Server は、以下の Active Directory モードおよび機能レベルでサポートされます。
ネイティブ モードの Windows 2000 Active Directory
Windows 2000 ネイティブ モードの Windows Server 2003 Active Directory
Windows Server 2003 機能レベルの Windows Server 2003 Active Directory
メモ : |
---|
Team Foundation Server では、Windows NT Server 4.0 をサポートするドメイン認証モードまたは機能レベルはサポートされません。 |
ドメイン信頼
Team Foundation Server には、サポートされるドメイン信頼に関して特に要件はありません。使用される信頼の種類は、企業のネットワークに配置されたフォレストやドメインの種類によって異なります。Team Foundation コンポーネントを企業のネットワークにどのように配置したかで、Team Foundation Server で要求される信頼関係が決まります。
一般に、Team Foundation Server のユーザーとサービスは、サーバーにアクセスするために認証される必要があります。信頼関係の観点から、Team Foundation Server は、ユーザーまたはサービス アカウントが定義されているドメインを信頼する必要があります。
Team Foundation Server コンポーネント間の信頼関係の要件
ここでは、さまざまな Team Foundation Server コンポーネント間で必要とされる最小限の信頼関係について説明します。また、信頼関係が配置構成に及ぼす可能性のある特別な暗黙の作用についても説明します。可能性のある Team Foundation クライアント コンポーネントと Team Foundation Server との間の信頼関係を確認する場合など、Team Foundation コンポーネント間の信頼関係が十分かどうかを判断する際は、Web ブラウザを使用して、そのクライアントから論理 Team Foundation アプリケーション層コンポーネントをホストしているサーバー上のフォルダまたは共有にアクセスできるかどうかを確認できます。クライアントから共有にアクセスできない場合、その構成は Team Foundation Server には不適切です。
Team Foundation Server では、グループのメンバシップの管理およびサーバーとサーバー リソースへのアクセスの許可 (承認) を、チーム エクスプローラで構成するか、コマンド ライン ユーティリティの TFSSecurity と TF を使用して構成できます。ここで指定したユーザーは、アプリケーション層サーバーでチェックされて、信頼されるドメインのメンバかどうかが確認されます。
クライアントと Team Foundation アプリケーション層サーバー間の信頼
チーム エクスプローラなどのクライアント アプリケーションが Team Foundation アプリケーション層サーバーに接続するとき、サーバーは、クライアント アプリケーションを実行しているユーザーの ID を認証しようと試みます。ユーザーの所属するドメインが Team Foundation アプリケーション層サーバーのドメインから信頼されていれば、そのユーザーは Windows 統合認証の一部として自動的に認証されます。この信頼が存在しない場合、クライアント アプリケーションでは、ユーザーが別の資格情報を入力してサーバーに接続できるように、ユーザー名とパスワードを入力するダイアログ ボックスが表示されます。認証後、Team Foundation Server は、認証済みのユーザーにサーバーへのアクセスが承認されたかどうかをチェックします。これを行うには、Team Foundation 有効ユーザー グループのメンバである必要があります。ユーザー ID が既存の Team Foundation Server グループに追加されるか、サーバーまたはプロジェクトに追加されると、ユーザーはこのグループに自動的に追加されます。詳細については、「ユーザーおよびグループの管理」を参照してください。
Team Foundation アプリケーション層サーバーのサービスは、TFSService アカウントの下で実行されます。したがって、Team Foundation アプリケーション層サーバーのドメインは、TFSService アカウントが所属するドメインを信頼する必要があります。ほとんどの場合、Team Foundation アプリケーション層サーバーと TFSService アカウントは同じドメインに所属します。
コンポーネントのドメイン |
信頼 |
コンポーネントのドメイン |
---|---|---|
Team Foundation アプリケーション層サーバーのドメイン |
一方向の信頼先 |
Team Foundation ユーザーのドメイン |
Team Foundation アプリケーション層サーバーのドメイン |
一方向の信頼先 |
TFSService アカウントのドメイン |
Team Foundation クライアント アプリケーションが Team Foundation Server に接続するたびにユーザー名とパスワードを入力する手間を省くには、Team Foundation クライアントのドメインが Team Foundation アプリケーション層サーバーのドメインを信頼する必要があります。
クライアントと Team Foundation プロキシの間の信頼
Team Foundation Server Proxy コンピュータのドメインは、プロキシを機能させるためにユーザーのドメインを信頼する必要があります。
コンポーネントのドメイン |
信頼 |
コンポーネントのドメイン |
---|---|---|
Team Foundation Server Proxy コンピュータのドメイン |
一方向の信頼先 |
Team Foundation ユーザーのドメイン |
Team Foundation Server Proxy と Team Foundation アプリケーション層サーバーの間の信頼
Active Directory のコンテキストにおいては、Team Foundation Server Proxy は Team Foundation Server のクライアントの 1 つです。
コンポーネントのドメイン |
信頼 |
コンポーネントのドメイン |
---|---|---|
Team Foundation アプリケーション層サーバーのドメイン |
一方向の信頼先 |
Team Foundation Server Proxy サービス アカウントのドメイン |
Team Foundation Server Proxy コンピュータのドメイン |
一方向の信頼先 |
Team Foundation Server Proxy ユーザー アカウントのドメイン |
Team Foundation クライアント アプリケーションが Team Foundation Server に接続するたびにユーザー名とパスワードを入力する手間を省くには、Team Foundation クライアントのドメインが Team Foundation アプリケーション層サーバーのドメインを信頼する必要があります。
Team Foundation 層サーバーと Team Foundation データ層サーバーの間の信頼
Team Foundation アプリケーション層サーバーは、サービス アカウント (通常は TFSService アカウント) を使用して Team Foundation データ層サーバーに接続します。Team Foundation Server Web サービスも、このアカウントで実行されます。したがって、Team Foundation データ層サーバーのドメインは、TFSService アカウントのドメインを信頼する必要があります。さらに、Team Foundation Server の配置内のすべてのドメインは、ドメインの信頼関係または明示的なアクセス許可の設定により、TFSService アカウント自体を信頼する必要があります。また、Team Foundation データ層サーバーのドメインは、TFSReports アカウントのドメインも信頼する必要があります。TFSReport アカウントは、Team Foundation Server レポートのデータ ソースにアクセスするために使用されるアカウントです。
さらに、Reporting Service は、ネットワーク サービス アカウントを使用して Team Foundation アプリケーション層サーバー上で実行されます。したがって、Team Foundation データ層サーバーのドメインは、Team Foundation アプリケーション層サーバーのドメインを信頼する必要があります。Team Foundation 層間に信頼関係を設定することが組織のポリシーに反する場合は、システムを再構成して、Team Foundation アプリケーション層サーバーとは別のドメインに属するサービス アカウントで Reporting Services を実行できます。ただし、これはかなり複雑な構成です。シングルサーバー配置をデュアルサーバー配置に移行し、Report Server を実行するサービス アカウントを手動で再構成する必要があります。
コンポーネントのドメイン |
信頼 |
コンポーネントのドメイン |
---|---|---|
Team Foundation データ層サーバーのドメイン |
一方向の信頼先 |
TFSService アカウントのドメイン |
Team Foundation データ層サーバーのドメイン |
一方向の信頼先 |
TFSReport アカウントのドメイン |
Team Foundation データ層サーバーのドメイン |
一方向の信頼先 |
Team Foundation アプリケーション層サーバーのドメイン |
Team Foundation ビルドと Team Foundation アプリケーション層サーバーの間の信頼
Team Foundation ビルドは、Windows サービス アカウントで実行されます。したがって、Team Foundation ビルド コンピュータのドメインは、このサービス アカウントのドメインを信頼する必要があります。通常、このサービス アカウントは TFSService アカウントですが、別のアカウントで実行されるように手動で構成することもできます。Team Foundation ビルドを TFSService アカウントで実行しない場合は、サービス名を [Project]\Build Services アプリケーション グループに追加する必要があります。
メモ : |
---|
ビルドの作成時に、新しいビルドはビルド ドロップ共有フォルダに作成されます。このフォルダがすべてのユーザーに対して共有されていること、および TFSService アカウントがこのフォルダに対してフル コントロールのアクセス許可を持っていることを確認してください。ファイル共有のためには、Team Foundation ビルド コンピュータの Windows ファイアウォールで "ファイルとプリンタの共有" ポートが開かれている必要があります。 |
コンポーネントのドメイン |
信頼 |
コンポーネントのドメイン |
---|---|---|
Team Foundation ビルド コンピュータのドメイン |
一方向の信頼先 |
サービス アカウントのドメイン (通常は TFSService) |
Team Foundation アプリケーション層サーバーのドメイン |
一方向の信頼先 |
サービス アカウントのドメイン (通常は TFSService) |
その他のドメインの構成と考慮事項
他のすべての Active Directory ドメイン構成はサポートされていないので、使用しないでください。Team Foundation Server のインストール先のドメインが Team Foundation Server をサポートしていること、および Team Foundation Server のインストール先の個々のコンピュータが適切なドメイン環境にあることを確認する必要があります。Team Foundation Server で複数のフォレスト間の作業をサポートする場合、適切なフォレスト間信頼を使用できる必要があります。
セキュリティを考慮して、Team Foundation Server は Windows Server 2003 ドメイン環境にインストールすることをお勧めします。偽装攻撃を回避するには、重複する名前の作成を禁止し、コンピュータ名を保護する必要があります。詳細については、Windows Server 2003 Active Directory (https://go.microsoft.com/fwlink/?linkid=47541) を参照してください。
参照
概念
ワークグループでの Team Foundation Server の管理