Asp.net mvc Can';t使用Windows身份验证从ASP.NET应用程序使用个人访问令牌对Azure DevOps进行身份验证

Asp.net mvc Can';t使用Windows身份验证从ASP.NET应用程序使用个人访问令牌对Azure DevOps进行身份验证,asp.net-mvc,azure,tfs,azure-devops,azure-active-directory,Asp.net Mvc,Azure,Tfs,Azure Devops,Azure Active Directory,我有一个ASP.NET MVC应用程序,它使用TFS客户端库访问本地TFS服务器。应用程序在Windows域上使用Windows身份验证,默认凭据用于与TFS的连接 我需要扩展应用程序以访问Azure DevOps组织。我尝试创建一个VSSConnecton对象并使用个人访问令牌(PAT),如下所示: VssConnection connection = new VssConnection(accountUri, new VssBasicCredential(string.Empty, pers

我有一个ASP.NET MVC应用程序,它使用TFS客户端库访问本地TFS服务器。应用程序在Windows域上使用Windows身份验证,默认凭据用于与TFS的连接

我需要扩展应用程序以访问Azure DevOps组织。我尝试创建一个VSSConnecton对象并使用个人访问令牌(PAT),如下所示:

VssConnection connection = new VssConnection(accountUri, new VssBasicCredential(string.Empty, personalAccessToken));
WorkItemTrackingHttpClient witClient = connection.GetClient<WorkItemTrackingHttpClient>();
VssConnection connection=newvssconnection(accountUri,newvssbasiccredential(string.Empty,personalAccessToken));
WorkItemTrackingTTPClient witClient=connection.GetClient();
但是没有使用PAT。无论我在VssBasicCredential方法中使用哪个重载,都会传递用户的Windows凭据

即使Azure广告是从Windows广告域同步的,用户也会被视为不同的对象,无法访问Azure DevOps。因为Azure AD用户和本地Windows用户具有相同的用户名(fname)。lname@domain.com)我也无法将本地Windows用户添加为Azure中的外部用户


是否有方法使用Windows身份验证从ASP.NET应用程序使用PAT(或其他替代凭据)对Azure DevOps进行身份验证?

尝试使用Azure AD凭据进行身份验证:

VssConnection connection = new VssConnection(accountUri, new VssAadCredential(username, password));

这最终完全不是代码的问题。上面列出的代码即使连接到Windows AD域也可以工作。在测试期间,我通过VPN连接到网络,显然该连接存在一些问题,导致身份验证无法工作。

这最初也不起作用;然而,这是因为网络配置。一旦解决了这个问题,你的答案和我问题中的原始代码都正常工作了。太棒了!主要的是身份验证有效:)如果解决了,您可以将其标记为关闭此线程的答案。