TFS2010APIを使用するASP.NETWebサイト内でパススルーまたは偽装認証を有効にしようとしています。
これはCassiniで正しく機能していますが、IIS 7.5(Windows 7)では問題が発生しています。
このテーマに関するこのブログ投稿を見つけて、次のことを試しました。
private static void Test()
{
TfsTeamProjectCollection baseUserTpcConnection =
new TfsTeamProjectCollection(new Uri(Settings.TfsServer));
// Fails as 'baseUserTpcConnection' isn't authenticated
IIdentityManagementService ims =
baseUserTpcConnection.GetService<IIdentityManagementService>();
// Read out the identity of the user we want to impersonate
TeamFoundationIdentity identity = ims.ReadIdentity(
IdentitySearchFactor.AccountName,
HttpContext.Current.User.Identity.Name,
MembershipQuery.None,
ReadIdentityOptions.None);
TfsTeamProjectCollection impersonatedTpcConnection = new
TfsTeamProjectCollection(new Uri(Settings.TfsServer),
identity.Descriptor);
}
カッシーニを使うときは、他に何も必要ありません
collection = new TfsTeamProjectCollection(new Uri(server));
web.config設定を有効にしました(そしてWindows認証モジュールをインストールしました):
<authentication mode="Windows"/>
<identity impersonate="true" />
私が見逃した明らかな何かがありますか?