Share via


Team Foundation Server のセキュリティの概念

更新 : 2007 年 11 月

Team Foundation Server をセキュリティ保護するには、Team Foundation Server の動作および他の Team Foundation コンポーネントとの通信について理解する必要があります。Team Foundation Server 管理者は、Windows 認証、ネットワーク プロトコル、ネットワーク トラフィック、および Team Foundation Server がインストールされるビジネス ネットワークの構造について理解している必要があります。さらに、Team Foundation Server のグループおよびアクセス許可についても理解している必要があります。

Team Foundation Server のセキュリティについて

Team Foundation Server のセキュリティの概念は、トポロジ、認証、および承認の 3 つの一般的なカテゴリに分類されます。トポロジには、Team Foundation サーバーを配置する場所と方法、Team Foundation Server と Team Foundation クライアントの間でやり取りされるネットワーク トラフィック、および Team Foundation Server 上で実行する必要のあるサービスが含まれます。認証には、Team Foundation Server のユーザー、グループ、およびサービスの有効性の判断が含まれます。承認には、Team Foundation Server の有効なユーザー、グループ、およびサービスが、操作を実行するための適切なアクセス許可を持っているかどうかの判断が含まれます。また、ネットワーク内の Team Foundation Server のセキュリティを最適化するために、他のコンポーネントおよびサービスに対する Team Foundation Server の依存関係を考慮する必要があります。

Team Foundation Server のセキュリティを検討する場合は、認証と承認の違いを理解する必要があります。認証は、クライアント、サーバー、またはプロセスから実行される接続の試みに対する資格情報の検査です。承認は、接続を試みている ID がオブジェクトまたはメソッドにアクセスするためのアクセス許可を持っているかどうかの検査です。承認は必ず、認証が正常に行われた後で発生します。接続が認証されない場合、承認のチェックを実行する前にエラーが発生します。接続の認証に成功した段階では、そのユーザーまたはグループは固有の操作を実行する承認を得ていないため、その操作はまだ許可されません。

Team Foundation Server のトポロジ、ポート、およびサービス

Team Foundation Server の配置とセキュリティでは、Team Foundation の配置の各コンポーネントが相互に接続して通信できるかどうかが最も重要な要素になります。目的は、Team Foundation クライアントと Team Foundation Server の間の接続を可能にし、それ以外の接続の試みを制限または阻止することです。

Team Foundation Server は特定のポートとサービスを使用して機能します。これらのポートは、セキュリティで保護して監視することにより、業務上のセキュリティのニーズを満たすことができます。Team Foundation の配置に応じて、Team Foundation Server Proxy を使用して、Team Foundation クライアント、Team Foundation のアプリケーション層とデータ層の論理コンポーネントをホストするサーバー、Team Foundation ビルドのビルド コンピュータ、およびリモート Team Foundation クライアントの間で Team Foundation Server のネットワーク トラフィックのやり取りを許可する必要があります。既定では、Team Foundation Server は Web サービスで HTTP を使用するように構成されています。Team Foundation Server のすべてのポートとサービスの一覧および Team Foundation Server のアーキテクチャ内でそれらを使用する方法については、「Team Foundation Server のセキュリティのアーキテクチャ」および「Team Foundation Server、HTTPS、および SSL (Secure Sockets Layer)」を参照してください。

Team Foundation Server は、Active Directory ドメインまたはワークグループに配置できます。Active Directory には、ワークグループよりも多くの組み込みのセキュリティ機能が用意されています。これらを使用して、Team Foundation Server 配置をセキュリティで保護できます。たとえば、重複するコンピュータ名を許可しないように Active Directory を構成することで、悪意のあるユーザーが認証されていない Team Foundation Server を使用してコンピュータ名を悪用するのを防止できます。ワークグループでこれと同様の脅威を排除するには、コンピュータ証明書を構成する必要があります。Active Directory ドメインの Team Foundation Server の詳細については、「Active Directory ドメインでの Team Foundation Server の管理」を参照してください。ワークグループの Team Foundation Server の詳細については、「ワークグループでの Team Foundation Server の管理」を参照してください。

Team Foundation Server が配置されるのがワークグループかドメインかに関係なく、Team Foundation Server の配置に関してトポロジ上の制約がいくつかあります。Team Foundation Server のトポロジの詳細については、「Team Foundation Server のトポロジ」、「SharePoint 製品とテクノロジについて」、および「SQL Server と SQL Server Reporting Services について」を参照してください。

Team Foundation Server は、Kerberos セキュリティ プロトコルの使用を完全にサポートします。Team Foundation Server をインストールした後、クライアントとサーバーの両方の相互認証で Kerberos をサポートするように Team Foundation Server を構成できます。

認証

Team Foundation Server のセキュリティは、Windows 統合認証と、Windows オペレーティング システムのセキュリティ機能に統合され、この認証と機能に依存しています。Windows 統合認証を使用すると、Team Foundation クライアントと Team Foundation Server の間の接続、論理 Team Foundation Server のアプリケーション層サーバーとデータ層サーバー上の Web サービス、および Team Foundation のアプリケーション層サーバーとデータ層サーバー間の接続に対してアカウントを認証できます。

Team Foundation Server と Windows SharePoint Services の間の SQL データベース接続では、SQL Server 認証を使用するように構成しないでください。SQL Server 認証は安全性の面で劣ります。データベースに接続すると、データベース管理者アカウントのユーザー名とパスワードが暗号化されないままサーバーからサーバーに送信されます。Windows 統合認証では、ユーザー名とパスワードは送信されません。代わりに、ホストのインターネット インフォメーション サービス (IIS: Internet Information Services) アプリケーション プールに関連付けられたサービス アカウント ID 情報が、Windows 統合認証セキュリティ プロトコルを使用して SQL Server に転送されます。

Team Foundation Server の承認

Team Foundation Server の承認は、Team Foundation のユーザーとグループ、そのユーザーとグループ両方に直接割り当てられているアクセス許可、およびそのユーザーとグループが所属する Team Foundation Server の他のグループから継承されるアクセス許可に基づきます。Team Foundation のユーザーとグループは、ローカル ユーザーとローカル グループ、Active Directory ユーザーと Active Directory グループ、またはその両方の場合があります。

Team Foundation Server では、サーバーレベルおよびプロジェクトレベルの既定のグループがあらかじめ構成されています。これらのグループは、個々のユーザーを使用して設定できます。ただし、管理を簡単にするために、Active Directory のセキュリティ グループを使用してグループを設定する場合もあります。この方法により、複数のコンピュータにまたがってグループ メンバシップとアクセス許可をより効率的に管理できます。

特定の配置では、複数のコンピュータといくつかのアプリケーションで、ユーザー、グループ、およびアクセス許可を構成することが必要になる場合があります。たとえば、配置の一部としてレポートおよびプロジェクト ポータルを組み入れる場合、SQL Reporting Services、Windows SharePoint Services、および Team Foundation Server でユーザーとグループのアクセス許可を構成する必要があります。Team Foundation Server では、プロジェクト単位でもサーバー全体でもアクセス許可を設定できます。また、Team Foundation Server に追加されたユーザーまたはグループは、自動的に Team Foundation 有効ユーザーに追加されるため、既定で、特定のアクセス許可が付与されます。アクセス許可の構成方法の詳細については、「アクセス許可の管理」を参照してください。Team Foundation Server のユーザーとグループの詳細については、「ユーザーおよびグループの管理」を参照してください。

Team Foundation Server の承認に対するアクセス許可の構成に加えて、ソース コード管理内および作業項目内で承認が必要になる場合があります。これらのアクセス許可はコマンド ラインで個別に管理されますが、チーム エクスプローラ インターフェイスにも組み込まれています。ソース管理のアクセス許可の詳細については、「Team Foundation バージョン管理」を参照してください。作業項目のカスタマイズの詳細については、「Team Foundation 作業項目の使用」を参照してください。

Team Foundation Server の依存関係

Team Foundation Server では、その独自のサービスに加えて、アプリケーション層サーバーとデータ層サーバーに特定の Windows サービスおよびその他のアプリケーション サービスが必要です。論理 Team Foundation アプリケーション層をホストするサーバーに必要なサービスの詳細を次の表に示します。

サービス名

説明

アプリケーション エクスペリエンス参照サービス

このサービスは、修正をアプリケーションに適用し、新しくリリースされた Windows オペレーティング システムまたは Service Pack でそれらを実行できるようにするインフラストラクチャの一部です。このサービスを実行して、アプリケーションの修正が機能するようにする必要があります。

分散トランザクション コーディネータ

このサービスは、データベース、メッセージ キュー、ファイル システムなど、トランザクションが保護された複数のリソースが更新されるように、トランザクションを調整します。トランザクションが保護されたこれらのリソースは、単一のコンピュータに配置されていたり、ネットワーク接続された多くのコンピュータに分散して配置されていたりする場合があります。

DNS クライアント

このサービスは、DNS ドメイン名の解決に使用されます。

イベント ログ

このサービスは、イベント ビューアに表示できる、セキュリティ、アプリケーション、およびシステムの既定の各ログの 1 つを書き込むことにより、オペレーティング システムのイベントを記録します。

IIS Admin サービス

このサービスは IIS メタベースを管理します。

ネット ログオン

このサービスは、ログオン要求を検証したり、ドメイン全体のユーザー アカウント データベースのレプリケーションを管理したりします。

ネットワーク接続

このサービス (NetMan サービスとも呼ばれます) は、コントロール パネルの [ネットワーク接続] で作成され構成されたすべてのネットワーク接続を管理し、デスクトップの通知領域にネットワークのステータスを表示します。

NLA (Network Location Awareness)

このサービスは、IP アドレスおよびドメイン名の名前および場所に対する変更などのネットワーク構成情報を収集して格納します。

リモート プロシージャ コール (RPC: Remote Procedure Call)

このサービスは、データ交換および別のプロセスに存在している機能の呼び出しを行うことができる、安全なプロセス間通信 (IPC: Inter-Process Communication) 機構です。この別のプロセスは、同じコンピュータ上、ローカル エリア ネットワーク (LAN) 上、またはインターネット全体にわたって存在できます。リモート プロシージャ コール サービスは、RPC エンドポイント マッパー (EPM) およびサービス コントロール マネージャ (SCM) として機能します。

レポート サーバー (MSSSQLSERVER)

このサービスは、SOAP (Simple Object Access Protocol) 要求および URL 要求の処理、レポートの処理、スナップショットとレポート キャッシュの管理、およびセキュリティ ポリシーと承認のサポートと適用を行います。

セキュリティ アカウント マネージャ

このサービスは、ユーザーが属するグループを含むユーザー アカウント情報を管理します。

WMI (Windows Management Instrumentation)

このサービスは、CIM (Common Information Model) オブジェクト マネージャの起動と停止を行います。

Windows タイム

このサービス (W32Time とも呼ばれます) は、Windows Server 2003 ネットワーク上で実行されているすべてのコンピュータの日付と時刻を同期します。

World Wide Web 発行サービス

このサービスは、ユーザー モードの構成と処理のマネージャです。これは、HTTP 要求を処理して Web アプリケーションを実行したり、Web アプリケーションを定期的にチェックしてそれらが予期せず停止していないかどうかを判断したりする、IIS コンポーネントを管理します。

論理 Team Foundation データ層をホストするサーバーに必要なサービスの詳細を次の表に示します。

サービス名

説明

アプリケーション エクスペリエンス参照サービス

このサービスは、修正をアプリケーションに適用し、新しくリリースされた Windows オペレーティング システムまたは Service Pack でそれらを実行できるようにするインフラストラクチャの一部です。このサービスを実行して、アプリケーションの修正が機能するようにする必要があります。

分散トランザクション コーディネータ

このサービスは、データベース、メッセージ キュー、ファイル システムなど、トランザクションが保護された複数のリソースが更新されるように、トランザクションを調整します。トランザクションが保護されたこれらのリソースは、単一のコンピュータに配置されていたり、ネットワーク接続された多くのコンピュータに分散して配置されていたりする場合があります。

DNS クライアント

このサービスは、DNS ドメイン名の解決に使用されます。

イベント ログ

このサービスは、イベント ビューアに表示できる、セキュリティ、アプリケーション、およびシステムの既定の各ログの 1 つを書き込むことにより、オペレーティング システムのイベントを記録します。

ネット ログオン

このサービスは、ログオン要求を検証したり、ドメイン全体のユーザー アカウント データベースのレプリケーションを管理したりします。

ネットワーク接続

このサービス (NetMan サービスとも呼ばれます) は、コントロール パネルの [ネットワーク接続] で作成され構成されたすべてのネットワーク接続を管理し、デスクトップの通知領域にネットワークのステータスを表示します。

NLA (Network Location Awareness)

このサービスは、IP アドレスおよびドメイン名の名前および場所に対する変更などのネットワーク構成情報を収集して格納します。

リモート プロシージャ コール (RPC: Remote Procedure Call)

このサービスは、データ交換および別のプロセスに存在している機能の呼び出しを行うことができる、安全なプロセス間通信 (IPC: Inter-Process Communication) 機構です。この別のプロセスは、同じコンピュータ上、ローカル エリア ネットワーク (LAN) 上、またはインターネット全体にわたって存在できます。リモート プロシージャ コール サービスは、RPC エンドポイント マッパー (EPM: Endpoint Mapper) およびサービス コントロール マネージャ (SCM) として機能します。

セキュリティ アカウント マネージャ

このサービスは、ユーザーが属するグループを含むユーザー アカウント情報を管理します。

SQL 分析サーバー (MSSQLSERVER)

このサービスは、OLAP キューブとデータ マイニング モデルを作成して管理します。

SQL Server フルテキスト検索 (MSSQLSERVER)

このサービスは、コンテンツのフルテキスト インデックスを作成し、作業項目のフルテキスト検索を可能にします。

WMI (Windows Management Instrumentation)

このサービスは、CIM (Common Information Model) オブジェクト マネージャの起動と停止を行います。

Windows タイム

このサービス (W32Time とも呼ばれます) は、Windows Server 2003 ネットワーク上で実行されているすべてのコンピュータの日付と時刻を同期します。

参照

概念

Team Foundation Server のセキュリティのアーキテクチャ

ワークグループでの Team Foundation Server の管理

Team Foundation バージョン管理

Team Foundation 作業項目の使用

その他の技術情報

Active Directory ドメインでの Team Foundation Server の管理

アクセス許可の管理

ユーザーおよびグループの管理

ソース管理のセキュリティ権限およびアクセス許可