0

TfsConfigurationServerクレデンシャルを設定せずに、を作成するだけで接続できるTFS2010サーバーを知っています。

TfsConfigurationServer configurationServer = new TfsConfigurationServer(new Uri("address"))

接続後、すべてのチームプロジェクトコレクションと対応するチームプロジェクトを取得できます。これはセキュリティの脆弱性ではありませんか?私はTFSAPIを初めて使用するため、よくわかりません。

すべてのTFSサーバーで、このようなチームプロジェクトを一覧表示できますか?これが脆弱性である場合、それを修正する方法は?

4

1 に答える 1

2

おそらく、クレデンシャルを使用していないということではなく、クレデンシャルを明示的に指定していないということです。この場合、ログインしたユーザーの資格情報が使用され、ユーザー名とパスワードを入力しなくてもログインできます。

次の3つのうちの1つが発生している可能性があります。

  1. ドメインユーザーとしてワークステーションにログインしています。接続しているTFSサーバーは、ログインしているドメインとの信頼関係を持つドメインに参加しています。ドメインユーザーには、チームプロジェクトコレクションのリストに接続してクエリを実行するための適切な権限があります。

  2. コンピューターとTFSサーバーの間に信頼関係はありませんが、サーバー上のワークステーションで同じユーザー名/パスワード構成を使用しています。(つまり、「シャドウアカウント」または「ミラーリングされたローカルアカウント」を使用しています。)TFSサーバー上のユーザーには、チームプロジェクトコレクションのリストに接続してクエリを実行するための適切なアクセス許可があります。

  3. このホストの資格情報がWindows資格情報マネージャーに保存されています。これらのクレデンシャルには、チームプロジェクトコレクションのリストに接続してクエリを実行するための適切な権限があります。

これらの2つのいずれかが当てはまらない場合は、代わりに、チームプロジェクトコレクションのリストに接続してクエリを実行する権限を持つアカウントに、明示的なユーザー名/パスワードのクレデンシャルを提供する必要があります。

IISで匿名アクセスをオンにして、ゲストユーザーにTFSのプロジェクトコレクションの一覧表示へのアクセスを許可することは可能かもしれませんが、これを行った人は誰も知りません私はこのシナリオを自分でテストしたことがありません。

いずれにせよ、この機能が有効になっているサーバーを見ているのであれば、それは確かに標準ではありません。

于 2012-07-31T19:58:53.127 に答える