Azure DevOps Server 2020 的身份验证问题 Argo CD - Git Repo

问题描述 投票:0回答:1

环境:

我有以下场景,我使用

Argo CD (v2.0.1+33eaf11)
将我的
kustomize
配置部署到
OKD
集群,该配置托管在
Git-Repo
上的
AzureDevOps 2020
中(本地)。 SSL 证书存在于各方。 (成功尝试从 argo CD 实例到 AzureDevOps GitRepo 进行 git 连接)。

我收到的错误是:

我尝试过以下方法:

  1. 在 AzureDevops 中创建具有存储库读取权限的 PAT,也尝试了完全访问权限。
  • 在 Argo CD 上,在连接 git-repo 对话框中,我尝试了以下操作,但没有成功: (图片来自argocd主页)
    1. 尝试:
      • 存储库网址:
        https://theServer/<project>/_git/<repository>
      • 用户名:
        <username of PAT>
      • 密码:
        <The PAT>
    2. 尝试:
      • 存储库网址:
        https://theServer/<account>/<project>/_git/<repository>
      • 用户名:某事 - 不能留空
      • 密码:
        <The PAT>
    3. 尝试:
      • 使用 SSH 使用自己的展位侧面生成 SSH 密钥
      • 导致 FATA[0000] 未知错误:远程:命令 git-upload-pack '******' 不是预期的格式。

有没有人如何启动并运行类似的场景?我正在寻找的是像访问令牌这样的机制。但我对其他所有可行的解决方案都很满意。

在 argoCD github 上创建了一个 问题

git azure-devops argocd
1个回答
0
投票

不是解决方案。只是洞察力可能有助于了解下面可能发生的事情。

过去 GIT 存储库也遇到过类似的问题。根据主机配置和可能的强化程度,内联 PAT(在 url 中)不再起作用。必须通过 base64 身份验证标头,例如:

Authorization: Basic Om9uNWt0bGVkcXlvbjJiaTZsaXFpYzJhNjJteXZsbm5zcGJuaHFtcnlvdWo3bmEzMnNu9GE=

例如,在 GIT 中,我们可以通过将 http.extraheader= 传递给 --config-env 参数来绕过内联 PAT。

不确定,但我不认为 ArgoCD 正在实现这个...如果他们能为拥有强化平台的人提供包含额外标头值的选项,那就太好了。

© www.soinside.com 2019 - 2024. All rights reserved.