簡體   English   中英

使用Windows憑據的TFS授權

[英]TFS Authorization using Windows Credentials

我正在嘗試連接我的TFS帳戶

https://xxx.visualstudio.com/DefaultCollection

如果我嘗試通過瀏覽器訪問此文件。 我的Windows憑據和TFS憑據是相同的。 我正在嘗試使用Windows憑據以編程方式登錄TFS。

我正在使用的庫是:-Microsoft.TeamFoundation.Client(版本14.0.0,框架版本4.6.0)

我不確定是否需要為此做任何其他事情,或者這是否足夠? 在web.config或app.config或其他任何地方需要做些什么? 最令人討厭的是,在同一個解決方案的舊項目中,一切似乎對我來說都是一樣的,並且一切正常。

獲取異常:

TF30063:您無權訪問https://xxx.visualstudio.com/DefaultCollection

碼:-

  public TfsTeamProjectCollection ConnectionVSO { get; set; }

  public TFSRepository()
    {
        var uri = new Uri("https://xxx.visualstudio.com/DefaultCollection");
        try
        {        
            var credentials = new AadCredential();
            var clientCredentials = new TfsClientCredentials(credentials) { AllowInteractive = false };
            TfsTeamProjectCollection teamProjectCollection = new TfsTeamProjectCollection(uri, clientCredentials);

            if (teamProjectCollection != null)
            {
                teamProjectCollection.EnsureAuthenticated();
            }
            ConnectionVSO = teamProjectCollection;
        }
        catch (Exception ex)
        {
        }
    }

我確定我缺少什么。 但是不確定嗎? :(

您正在嘗試連接VSTS,如果您將其存儲在Web憑據中,則該憑據應存儲在Web憑據中,而不是Windows憑據中。

您可以創建一個VssConnection實例來獲取REST服務的HttpClients,或者創建一個TfsTeamProjectCollection實例以使用SOAP對象模型來認證VSTS。 您可以使用以下方法來實現它:

  • REST服務的Azure Active Directory身份驗證
  • REST服務的個人訪問令牌身份驗證
  • REST服務的Visual Studio登錄提示(支持Microsoft帳戶或Azure Active Directory)
  • REST服務的OAuth身份驗證
  • SOAP服務的Azure Active Directory身份驗證
  • SOAP服務的基本身份驗證
  • 用於SOAP服務的Visual Studio登錄提示(支持Microsoft帳戶或Azure Active Directory)

詳細信息: https : //www.visualstudio.com/zh-cn/docs/integrate/get-started/client-libraries/samples#authenticating-visual-studio-team-services

那根本不是代碼的問題。 一切都很好。 這是我的代碼存儲庫的問題。 我更改了我的代碼在硬盤驅動器上的映射路徑,並獲取了最新的代碼,它可以正常工作。 奇怪但真實的:( !!現在很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM