我正在编写一个Coldfusion Web应用程序(供内部使用),它允许我们的项目经理开始部署新项目。该应用程序的一个关键组件要求它在github上克隆存储库。当我执行git clone时,我无法通知凭据。
我认为对此的规范解决方案是使用一组ssh密钥设置机器用户,但我不知道如何将密钥与服务器关联,以便应用程序可以使用它
我可以拥有对所需服务器的任何访问权限,以实现此目的。
我不知道它是否相关,但这是有问题的示例代码:
cfexecute(
variable = "output",
name = "c:\progra~2\git\bin\git.exe",
arguments = "clone ssh://[github path] d:\inetpub\wwwroot\[file path]",
timeout = 240
);
答案 0 :(得分:1)
我不知道如何以应用程序可用的方式将密钥与服务器相关联。
您需要查看哪个用户将运行该应用程序(我假设您的网络服务器有特定用户),然后该用户生成密钥对并将密钥上传到GitHub。
你也可以尝试this回答,这基本上说明了:
我今天遇到了同样的问题,并使用进程监视器查看发生了什么,并发现由于某些原因,
sh.exe
在C:\Windows\SysWOW64\config\systemprofile\.ssh
中查找了密钥。所以我将C:\Users\Administrator\.ssh
中的所有内容复制到该文件夹中,并且完美无缺。
基本上将您的密钥放在C:\Windows\SysWOW64\config\systemprofile\.ssh
文件夹中。