Azure Git 身份验证失败
Authentication failed for Azure Git
我正在尝试在 Azure 中克隆我的 Web 应用程序。
当我 运行 git clone https://username@appname.scm.azurewebsites.net:443/appname.git
终端询问我的密码时。
但是我填写密码的时候,一直提示认证失败
即使我在门户中多次更改密码(设置 -> 设置部署凭据)。
为什么它一直说我的身份验证失败?
由于 azure
不支持 ssh,您将必须至少使用一次密码(在某些情况下,您下次不会提示输入密码)
这是一篇描述如何设置的文章
https://azure.microsoft.com/en-us/documentation/articles/web-sites-publish-source-control/
下面是如何使用 Azure 设置 git:
http://weblogs.asp.net/shijuvarghese/building-and-deploying-windows-azure-web-sites-using-git-and-github-for-windows
这是您遵循的步骤
If this is your first time setting up a repository in Azure, you need to create login credentials for it.
You will use them to log into the Azure repository and push changes from your local Git repository. From your web app's blade, click Settings > Deployment credentials
, then configure your deployment username and password.
When you're done, click OK.
现在这样做:
假设您每次都输入正确的密码,这可能是一个 delay/propagation 问题。
您还可以使用 Site-Level 凭据,详见 this wiki page。您可以通过主 WebApp 栏上的 "Get Publish Profile" 选项在门户中下载您的发布凭据来获取这些信息。然后可以在 yourapp.PublishSettings
文件中找到用户名/密码,看起来类似于 userName="$yourapp" userPWD="ABC123"
。如果您的 User-Level 凭据不起作用(如果它们正确,它们应该是正确的),这只是作为解决方法提到的。
解决此问题的一个直接方法是 Download/Get 从主工具栏发布配置文件(确保刷新门户页面)并使用 .publishsettings 文件中提供的密码。
我的网站也遇到了同样的问题,后来发现问题出在网站 url:
自动生成的遥控器 url 是:https://user@site.scm.azurewebsites.net/site.git
另一方面,门户显示:https://user@site.scm.azurewebsites.net:443/site.git
使用以下命令更新 git 中的远程 url 后:
git remote set-url azure
https://<user>@<site>.scm.azurewebsites.net/<site>.git
https://<user>@<site>.scm.azurewebsites.net:443/<site>.git
事情开始按预期进行。
故事的士气:检查部署url以及密码。
就我而言,看起来 Azure 服务器正在变慢。
Git部署
git 推送 azure master
严重:
身份验证失败
FTP部署
认证-OK上传速度1-10K
我在尝试 git clone https://<username>@praat.scm.azurewebsites.net:443/<repo-name>.git
时遇到了同样的问题。我通过删除端口解决了问题。
所以你的新 url 不应该有端口 443.
接受的答案对我不起作用,但这个有效。
检查你的设置 Azure URL 和
git config --get remote.<azure-remote-name>.url
使用以下命令重置 azure url
git remote set-url <azure-remote-name>
https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net:443/<site>.git
尝试使用
推送您的代码
git push <azure-remote-name>
它将打开 windows 身份验证屏幕,显示输入凭据以连接到 https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net/<site>.git
取消此 window。它将提示基本凭据 window 表示输入凭据以连接到 https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net:433/<site>.git
输入您的凭据即可。
对我来说,这是使用远程 url 克隆项目并取消 windows 安全提示的问题。之后,它会要求您输入密码。
一旦你能够克隆它,你就可以成功推送它。
故事的寓意:在推送之前先克隆它。
在我身上,当我从 cli 设置部署用户时,从未创建密码。我必须转到应用程序的 Web 应用程序、应用程序服务,然后设置部署凭据
上述解决方案的 None 对我有用。
The reason why the same error was observed in my deployment was
because my password contained a character "@".
这使我的 Azure Web 应用程序的 Git 克隆 url 格式错误。当我通过删除@更改密码时,它解决了这个问题。您也可以在连接字符串中将 @ 更改为 %40
。
转到安全选项卡>>个人访问令牌>>新令牌>>给它完全访问权限>>记下访问令牌,因为您将使用它作为密码
我遇到了类似的问题,其中自动生成的 git 克隆 url 是:
https://group-admin-account-username@dev.azure.com/site.git
所以我不得不用我自己的帐户用户名替换它
https://my-username@dev.azure.com/site.git
这会提示我正确输入帐户密码:
git clone https://my-username@dev.azure.com/site.git
对我有用的是我创建了个人访问令牌。
单击右上角的用户名 > 安全 > Select 左窗格中的个人访问令牌 > 新令牌。
为您的令牌提供令牌名称和范围,然后单击创建。
保存该令牌并将其用作密码。
这可能会有所帮助:对于我的第一个 Web 应用程序,我必须转到部署中心、部署凭据。然后使用 App Credentials 或创建 User Credentials。在此之后,删除本地机器上缓存的凭据(windows: Control Panel\User Accounts\Credential Manager)。 运行 "git push webapp master:master" 再次输入任一部署凭据。成功了。
是的,这里的许多答案都指向正确的路径,但我的情况是:- 我得到了一个 url 来访问 azure cloud 上的 git 存储库,我对此非常满意access/browse 浏览器上的代码 (Vs) 当我尝试克隆时我遇到了同样的问题。
所以当您点击 clone 时,如下图所示,您必须生成 Git 凭据,这很奇怪,不知道为什么,可能是他们'我已将我的帐户设置为访问 azure cloud,它不能用于克隆 git 存储库(意味着不能用作 git 凭据),这与我所看到的有所不同AWS/gitlab/bitbucket,可能是帐户设置问题,或者如果它在 Azure 上的回购很常见,并且如果您遇到同样的问题 - 请尝试一下。
还有一个,大家已经提到了,请不要尝试连接到url那边生产的(有点像):
https://project-account@dev.azure.com/project-name/apps/_git/library/
尝试通过您的 GIT 用户名连接,然后使用密码:
https://username@dev.azure.com/project-name/apps/_git/library/
作为提示,如果您的用户名中包含特殊字符,Git cmd/bash 将通过错误,因此请将其替换为有效字符,例如。 :-
- @可以换成%40
- +可以换成%2B
类似于:https://username%40xyz.com@dev.azure.com/project-name/apps/_git/library/
就我而言 none 上述方法解决了我的问题(但他们指示我找出问题所在)
我尝试了自动生成的应用凭据和我自定义创建的用户凭据,每次我都收到身份验证失败消息。
凭据页面上的描述建议我使用以下格式的用户名:
<app-name>\<username>
这就是身份验证失败的原因。一旦我输入没有 <app-name>
前缀的用户名,身份验证就通过了,一切都顺利进行。
希望此信息对您有所帮助
导航到部署中心 >> 部署凭据,将有本地git的应用程序凭据。使用用户名和密码就可以了。
添加 SSH 密钥后,使用 SSH 而不是 HTTPS 对我有用
上面的一些让我很接近,例如@Nilay Vishwakarma 的post,但我最终发现我的身份验证问题的原因是我的密码包含一个“$”,后跟一个“.”。我最终在 powershell 中注意到的 .u7' 在我输入时突出显示为黄色。
因此,我认为可能是 CLi 在密码中对这个字符有问题(尽管 this tutorial 中没有提到它是保留字符)。
我重新运行 'az webapp deployment user set --user-name [user] --password [pwd]' 命令并修改了没有“$”的密码,然后能够输入我的凭据并进行身份验证。
使用 Mac 我遇到了同样的问题。使用 Git 凭据管理器有效。
- 使用 brew 安装了 GCM https://github.com/microsoft/Git-Credential-Manager-Core
- 已连接 git 到远程 Azure Repo
- 在git推送时,弹出请求的用户名和密码
- 全部连接。
当您在设置中看到 PAT(个人访问令牌)时,请不要感到惊讶。
“一旦通过身份验证,凭据管理器会创建并缓存个人访问令牌,以便将来连接到存储库。Git 连接到此帐户的命令在令牌过期之前不会提示输入用户凭据。A可以通过 Azure Repos 撤销令牌。"
下面link应该有帮助
https://docs.microsoft.com/en-us/azure/devops/repos/git/set-up-credential-managers?view=azure-devops
Current Azure Structure for adding credential
使用突出显示的用户、密码、确认密码部分创建用户凭据。使用它继续你被困的地方。
我不得不这样做
- 生成 Git 凭据
git remote add origin https://username:password@dev.azure.com/xxx/_git/xxx
git add.
git commit -m init
push -u origin --all
如果您使用的是 Sourcetree 并且尝试了此处的所有答案,但没有任何效果。
再次尝试克隆您的项目,使用此url结构作为源:
https://<username>:<password>@dev.azure.com/project-name/apps/_git/library/
用户名和密码来自克隆分支时的生成Git凭据按钮。
我在 Visual studio 中遇到此错误,因为我在 'https://dev.azure.com/foo/bar' 中尚未创建分支时使用了同步功能。
我没有进行同步,而是进行了推送,然后它提示我输入凭据。之后一切正常。
希望这对某人有所帮助。
如果您无法克隆 projects/repos,
- 检查代理设置或 VPN(如果提供)
- 检查存储库路径访问权限
- 检查您的访问权限或密码是否过期
如果您遇到登录问题,
- 为 Git、Azure 等各个版本控制系统生成 PAT(个人访问令牌)
- 如果 PAT 失败,创建备用凭据
- 如果这两个都对,但还是无法访问,那么
- 转到您的存储库,单击 克隆 按钮,在那里您可以找到 生成凭据 按钮。尝试使用这些新生成的凭据登录。
首先检查以上所有选项。如果您遵循所有内容但仍然面临问题,请尝试向 colleagues/team 领导/经理或客户寻求帮助。
- 登录到 Azure Dev Ops 门户。
- 转到您要克隆的项目。
- Select 从左侧菜单回购。
- 点击右上角的克隆。
- 单击生成 Git 凭据
- 在克隆存储库的位置输入给定的用户名和密码。
- 大功告成!
单击“生成凭据”,然后复制并粘贴密码。
有效。
在 URL 设置中的 dev.azure 之前添加令牌对我有用。我正在使用 SourceTree。
https://token@dev.azure.com/org/_git/repo
我突然遇到了同样的问题。原来是我本地站的问题,网卡被拒绝导致未通过认证。 禁用 IPV6 解决了我的问题:参见
我正在尝试在 Azure 中克隆我的 Web 应用程序。
当我 运行 git clone https://username@appname.scm.azurewebsites.net:443/appname.git
终端询问我的密码时。
但是我填写密码的时候,一直提示认证失败
即使我在门户中多次更改密码(设置 -> 设置部署凭据)。
为什么它一直说我的身份验证失败?
由于 azure
不支持 ssh,您将必须至少使用一次密码(在某些情况下,您下次不会提示输入密码)
这是一篇描述如何设置的文章
https://azure.microsoft.com/en-us/documentation/articles/web-sites-publish-source-control/
下面是如何使用 Azure 设置 git: http://weblogs.asp.net/shijuvarghese/building-and-deploying-windows-azure-web-sites-using-git-and-github-for-windows
这是您遵循的步骤
If this is your first time setting up a repository in Azure, you need to create login credentials for it.
You will use them to log into the Azure repository and push changes from your local Git repository. From your web app's blade, click
Settings > Deployment credentials
, then configure your deployment username and password.When you're done, click OK.
现在这样做:
假设您每次都输入正确的密码,这可能是一个 delay/propagation 问题。
您还可以使用 Site-Level 凭据,详见 this wiki page。您可以通过主 WebApp 栏上的 "Get Publish Profile" 选项在门户中下载您的发布凭据来获取这些信息。然后可以在 yourapp.PublishSettings
文件中找到用户名/密码,看起来类似于 userName="$yourapp" userPWD="ABC123"
。如果您的 User-Level 凭据不起作用(如果它们正确,它们应该是正确的),这只是作为解决方法提到的。
解决此问题的一个直接方法是 Download/Get 从主工具栏发布配置文件(确保刷新门户页面)并使用 .publishsettings 文件中提供的密码。
我的网站也遇到了同样的问题,后来发现问题出在网站 url: 自动生成的遥控器 url 是:https://user@site.scm.azurewebsites.net/site.git
另一方面,门户显示:https://user@site.scm.azurewebsites.net:443/site.git
使用以下命令更新 git 中的远程 url 后:
git remote set-url azure
https://<user>@<site>.scm.azurewebsites.net/<site>.git
https://<user>@<site>.scm.azurewebsites.net:443/<site>.git
事情开始按预期进行。
故事的士气:检查部署url以及密码。
就我而言,看起来 Azure 服务器正在变慢。
Git部署
git 推送 azure master
严重:
身份验证失败FTP部署
认证-OK上传速度1-10K
我在尝试 git clone https://<username>@praat.scm.azurewebsites.net:443/<repo-name>.git
时遇到了同样的问题。我通过删除端口解决了问题。
所以你的新 url 不应该有端口 443.
接受的答案对我不起作用,但这个有效。
检查你的设置 Azure URL 和
git config --get remote.<azure-remote-name>.url
使用以下命令重置 azure url
git remote set-url <azure-remote-name> https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net:443/<site>.git
尝试使用
推送您的代码git push <azure-remote-name>
它将打开 windows 身份验证屏幕,显示输入凭据以连接到
https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net/<site>.git
取消此 window。它将提示基本凭据 window 表示输入凭据以连接到
https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net:433/<site>.git
输入您的凭据即可。
对我来说,这是使用远程 url 克隆项目并取消 windows 安全提示的问题。之后,它会要求您输入密码。 一旦你能够克隆它,你就可以成功推送它。
故事的寓意:在推送之前先克隆它。
在我身上,当我从 cli 设置部署用户时,从未创建密码。我必须转到应用程序的 Web 应用程序、应用程序服务,然后设置部署凭据
None 对我有用。
The reason why the same error was observed in my deployment was because my password contained a character "@".
这使我的 Azure Web 应用程序的 Git 克隆 url 格式错误。当我通过删除@更改密码时,它解决了这个问题。您也可以在连接字符串中将 @ 更改为 %40
。
转到安全选项卡>>个人访问令牌>>新令牌>>给它完全访问权限>>记下访问令牌,因为您将使用它作为密码
我遇到了类似的问题,其中自动生成的 git 克隆 url 是:
https://group-admin-account-username@dev.azure.com/site.git
所以我不得不用我自己的帐户用户名替换它
https://my-username@dev.azure.com/site.git
这会提示我正确输入帐户密码:
git clone https://my-username@dev.azure.com/site.git
对我有用的是我创建了个人访问令牌。 单击右上角的用户名 > 安全 > Select 左窗格中的个人访问令牌 > 新令牌。 为您的令牌提供令牌名称和范围,然后单击创建。 保存该令牌并将其用作密码。
这可能会有所帮助:对于我的第一个 Web 应用程序,我必须转到部署中心、部署凭据。然后使用 App Credentials 或创建 User Credentials。在此之后,删除本地机器上缓存的凭据(windows: Control Panel\User Accounts\Credential Manager)。 运行 "git push webapp master:master" 再次输入任一部署凭据。成功了。
是的,这里的许多答案都指向正确的路径,但我的情况是:- 我得到了一个 url 来访问 azure cloud 上的 git 存储库,我对此非常满意access/browse 浏览器上的代码 (Vs) 当我尝试克隆时我遇到了同样的问题。
所以当您点击 clone 时,如下图所示,您必须生成 Git 凭据,这很奇怪,不知道为什么,可能是他们'我已将我的帐户设置为访问 azure cloud,它不能用于克隆 git 存储库(意味着不能用作 git 凭据),这与我所看到的有所不同AWS/gitlab/bitbucket,可能是帐户设置问题,或者如果它在 Azure 上的回购很常见,并且如果您遇到同样的问题 - 请尝试一下。
还有一个,大家已经提到了,请不要尝试连接到url那边生产的(有点像):
https://project-account@dev.azure.com/project-name/apps/_git/library/
尝试通过您的 GIT 用户名连接,然后使用密码:
https://username@dev.azure.com/project-name/apps/_git/library/
作为提示,如果您的用户名中包含特殊字符,Git cmd/bash 将通过错误,因此请将其替换为有效字符,例如。 :-
- @可以换成%40
- +可以换成%2B
类似于:https://username%40xyz.com@dev.azure.com/project-name/apps/_git/library/
就我而言 none 上述方法解决了我的问题(但他们指示我找出问题所在)
我尝试了自动生成的应用凭据和我自定义创建的用户凭据,每次我都收到身份验证失败消息。
凭据页面上的描述建议我使用以下格式的用户名:
<app-name>\<username>
这就是身份验证失败的原因。一旦我输入没有 <app-name>
前缀的用户名,身份验证就通过了,一切都顺利进行。
希望此信息对您有所帮助
导航到部署中心 >> 部署凭据,将有本地git的应用程序凭据。使用用户名和密码就可以了。
添加 SSH 密钥后,使用 SSH 而不是 HTTPS 对我有用
上面的一些让我很接近,例如@Nilay Vishwakarma 的post,但我最终发现我的身份验证问题的原因是我的密码包含一个“$”,后跟一个“.”。我最终在 powershell 中注意到的 .u7' 在我输入时突出显示为黄色。
因此,我认为可能是 CLi 在密码中对这个字符有问题(尽管 this tutorial 中没有提到它是保留字符)。
我重新运行 'az webapp deployment user set --user-name [user] --password [pwd]' 命令并修改了没有“$”的密码,然后能够输入我的凭据并进行身份验证。
使用 Mac 我遇到了同样的问题。使用 Git 凭据管理器有效。
- 使用 brew 安装了 GCM https://github.com/microsoft/Git-Credential-Manager-Core
- 已连接 git 到远程 Azure Repo
- 在git推送时,弹出请求的用户名和密码
- 全部连接。
当您在设置中看到 PAT(个人访问令牌)时,请不要感到惊讶。
“一旦通过身份验证,凭据管理器会创建并缓存个人访问令牌,以便将来连接到存储库。Git 连接到此帐户的命令在令牌过期之前不会提示输入用户凭据。A可以通过 Azure Repos 撤销令牌。"
下面link应该有帮助
https://docs.microsoft.com/en-us/azure/devops/repos/git/set-up-credential-managers?view=azure-devops
Current Azure Structure for adding credential
使用突出显示的用户、密码、确认密码部分创建用户凭据。使用它继续你被困的地方。
我不得不这样做
- 生成 Git 凭据
git remote add origin https://username:password@dev.azure.com/xxx/_git/xxx
git add.
git commit -m init
push -u origin --all
如果您使用的是 Sourcetree 并且尝试了此处的所有答案,但没有任何效果。
再次尝试克隆您的项目,使用此url结构作为源:
https://<username>:<password>@dev.azure.com/project-name/apps/_git/library/
用户名和密码来自克隆分支时的生成Git凭据按钮。
我在 Visual studio 中遇到此错误,因为我在 'https://dev.azure.com/foo/bar' 中尚未创建分支时使用了同步功能。
我没有进行同步,而是进行了推送,然后它提示我输入凭据。之后一切正常。
希望这对某人有所帮助。
如果您无法克隆 projects/repos,
- 检查代理设置或 VPN(如果提供)
- 检查存储库路径访问权限
- 检查您的访问权限或密码是否过期
如果您遇到登录问题,
- 为 Git、Azure 等各个版本控制系统生成 PAT(个人访问令牌)
- 如果 PAT 失败,创建备用凭据
- 如果这两个都对,但还是无法访问,那么
- 转到您的存储库,单击 克隆 按钮,在那里您可以找到 生成凭据 按钮。尝试使用这些新生成的凭据登录。
首先检查以上所有选项。如果您遵循所有内容但仍然面临问题,请尝试向 colleagues/team 领导/经理或客户寻求帮助。
- 登录到 Azure Dev Ops 门户。
- 转到您要克隆的项目。
- Select 从左侧菜单回购。
- 点击右上角的克隆。
- 单击生成 Git 凭据
- 在克隆存储库的位置输入给定的用户名和密码。
- 大功告成!
单击“生成凭据”,然后复制并粘贴密码。
有效。
在 URL 设置中的 dev.azure 之前添加令牌对我有用。我正在使用 SourceTree。
https://token@dev.azure.com/org/_git/repo
我突然遇到了同样的问题。原来是我本地站的问题,网卡被拒绝导致未通过认证。 禁用 IPV6 解决了我的问题:参见