libgit2sharp icon indicating copy to clipboard operation
libgit2sharp copied to clipboard

LibGit2Sharp.LibGit2SharpException | too many redirects or authentication replays

Open belkhir-aziz opened this issue 1 year ago • 3 comments

I am using LibGit2Sharp (version 0.28.0) with a Personal Access Token to access AZURE Repository.

UsernamePasswordCredentials => { Username = "pat", Password = PersonalAccessToken }

CustomHeader => "Authorization: Basic {Convert.ToBase64String(Encoding.UTF8.GetBytes($":{PersonalAccessToken}"))}"

Everything was working as expected until last week, when I started encountering exceptions while trying to interact with the remote repository (e.g., clone, pull, push).

Clone failed. | LibGit2Sharp.LibGit2SharpException | too many redirects or authentication replays at LibGit2Sharp.Core.Ensure.HandleError(Int32 result) in //LibGit2Sharp/Core/Ensure.cs:line 154 at LibGit2Sharp.Core.Ensure.ZeroResult(Int32 result) in //LibGit2Sharp/Core/Ensure.cs:line 172 at LibGit2Sharp.Core.Proxy.git_clone(String url, String workdir, GitCloneOptions& opts) in //LibGit2Sharp/Core/Proxy.cs:line 278 at LibGit2Sharp.Repository.Clone(String sourceUrl, String workdirPath, CloneOptions options) in //LibGit2Sharp/Repository.cs:line 824

belkhir-aziz avatar Aug 04 '24 08:08 belkhir-aziz

Did you upgrade anything locally (in other words, change the version of LibGit2Sharp) in the last week? If not, something has changed in Azure Repos.

You're using two authentication methods - first, you're setting UsernamePasswordCredentials, second you're adding your own credentials in the CustomHeader. I would imagine that a remote host would be confused about this. What happens if you only use one of these mechanisms?

ethomson avatar Aug 05 '24 17:08 ethomson

Thank you for your reply. No, I haven't changed the version. It's just that authentication with PAT doesn't work for (push, pull...), I updated the PAT to make sure it's valid. Using DefaultCredentials() does not give any error. Everything was ok previous week.

I still get the issue when using one Mechanism only.

belkhir-aziz avatar Aug 05 '24 18:08 belkhir-aziz

Is the value of username a <user> string? I've been able to start isolating a problem where the domain gets trimmed before it gets to Azure resulting in an incorrect username in the login.

kastagg avatar Oct 22 '24 19:10 kastagg