【问题标题】:Connect to TFS using windows credentials使用 Windows 凭据连接到 TFS
【发布时间】:2015-01-19 15:54:53
【问题描述】:
NetworkCredential networkCredentials = new NetworkCredential(userName, windowsPassword, domain);

WindowsCredential windowsCredentials = new WindowsCredential(networkCredentials);
TfsClientCredentials tfsCredentials = new TfsClientCredentials(windowsCredentials);
tfsCredentials.AllowInteractive = false;

TeamProjectCollection = new TfsTeamProjectCollection(new Uri(urltoTFS), tfsCredentials);
TeamProjectCollection.Authenticate();

嗨,

我知道上述方法可以连接到 TFS。我想要做的是通过我的 Windows 登录名进行连接,因此我不必根据特定的用户名和密码创建网络凭据对象..(我见过的每个示例都是这样做的)

所以基本上任何机器将运行此代码将使用登录用户的凭据。

  1. 这样可以吗,
  2. 如果是这样,我该怎么做

干杯, 约翰

【问题讨论】:

  • 我错过了什么吗?不传递给 TfsTeamProjectCollection 构造凭证不能解决?
  • @GiulioVian 你是什么意思.. 如果你看上面的代码,我可以从 TfsClientCredentials 构造 TfsTeamProjectCollection,它是根据网络凭据构造的 windows 凭据构造的。网络凭据依赖于用户名和密码。我不想使用静态用户名/密码,但想使用登录的 Windows 凭据..
  • 我的意思是:您根本不需要传递凭据,在这种情况下当前用户适用。
  • @GiulioVian 啊,我明白了,抱歉。哈哈,好像就这么简单。

标签: tfs


【解决方案1】:

您需要创建正确的 SPN 以允许您的站点获取 Kerberos 令牌,以便能够将凭据从用户工作站通过您的网站传递到 TFS 服务器。这通常称为“双跳问题”,可以使用 Active Directory 轻松实现。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-30
    • 1970-01-01
    • 2016-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-10
    相关资源
    最近更新 更多