IIS 基本身份驗證使個人存取令牌失效

Azure DevOps Services

警告

建議您一律關閉 IIS 基本身份驗證。 只有在必要的情況下,才應該啟用 IIS 基本身份驗證。 在 Windows 電腦上啟用 IIS 基本身份驗證時,它可防止您使用個人存取令牌 (PAT) 作為驗證機制。

例如,如果您使用 PAT 來允許第三方應用程式擷取錯誤資訊,然後將具有資訊的電子郵件傳送給 Bug 被指派者(已啟用 IIS 基本身份驗證),應用程式會失敗驗證。 應用程式無法擷取錯誤資訊。

已啟用 IIS 基本身份驗證的 Git

警告

如果您使用 Git 搭配 IIS 基本身份驗證,Git 會中斷,因為它需要 PAT 來進行用戶驗證。 雖然我們不建議您使用 IIS 基本身份驗證,但藉由將額外的標頭新增至 Git 要求,您可以使用 Git 搭配 IIS 基本身份驗證。

額外的標頭必須用於所有 Azure DevOps Server 安裝,因為 Windows 驗證也會防止使用 PAT。

額外的標頭必須包含 「user:PAT」 的基底 64 編碼方式。請參閱下列格式和範例。

[格式]

git -c http.extraheader='Authorization: Basic [base 64 encoding of "user:password"]' ls-remote http://tfsserver:8080/tfs/DefaultCollection/_git/projectName

範例

git -c http.extraheader='Authorization: Basic a2FzYW50aGE6bzN3cDVndmw2YXRkajJkam83Znd4N2k3NDdhbGxjNXp4bnc3b3o0dGQycmd3d2M1eTdjYQ==' ls-remote http://tfsserver:8080/tfs/DefaultCollection/_git/projectName