vscode-remote-ssh 不适用于使用 Azure AD 身份验证的 SSH
vscode-remote-ssh does not work with SSH using Azure AD authentication
我们正尝试在 Azure 中使用项目特定的 VM 实施远程开发模型,并允许用户使用带有 MFA 的 Azure AD 身份验证从 VS 代码进行连接。
它适用于 Public 密钥,但不适用于 Azure AD 身份验证。
有一些禁用本地服务器选项并启用控制台的建议,因此用户可以单击设备登录 link 并输入代码。但是,该模型已被 Microsoft 弃用。所以当前可用的选项是使用 az ssh 模块(或者我找不到的东西)
https://docs.microsoft.com/en-us/azure/active-directory/devices/howto-vm-sign-in-azure-ad-linux
感谢有关如何为此模型配置身份验证的任何指导
您需要按照Microsoft Document中已经提到的步骤为用户启用AD登录。
使用 az-cli 从 vscode 执行 ssh 所必需或需要的步骤:
创建虚拟机时,请确保您有Login with Azure AD preview
启用并请打开SSH
、HTTP
和 HTTPS
端口:
在Visual Studio代码中,请确保Azure CLI为az模块安装了扩展ssh
。您可以按照以下 2 个命令进行安装:
az login # login using your Azure AD user credentials
az extension add --name ssh # install the ssh extension
请确保在使用 user
登录 Azure AD 之前,您必须为该用户分配 rbac
角色,即 Virtual Machine Administrator Login/ Virtual Machine User Login
如果您不为用户提供角色,您将面临以下错误:
To assign the roles , 你可以去 VM in Portal >> Access Control(IAM)>>add role assignment>> select VM admin login /VM user login >> add the users and assign
.
完成上述操作后,您将能够使用 az 通过 SSH 连接到虚拟机
来自 vscode 的模块如下所示:
命令:
az login # user who will login need to authenticate
az ssh vm -n vmname -g resourcegroupname # SSH to the VM
更新:
上述问题的第二部分是如何使用 Azure 广告凭据从 VSCODE 使用远程桌面:
运行 vscode 中的这 2 个命令:
az login
az ssh config --ip VMPublicIP --file C:\Users\user\terraform\sshconfig # saves the config file with your azureadcredentials
复制使用
以上命令为 VM 远程 ssh 配置文件。
完成上述操作后,请连接到主机以获取相同的文件
您已为上述步骤配置。
我们正尝试在 Azure 中使用项目特定的 VM 实施远程开发模型,并允许用户使用带有 MFA 的 Azure AD 身份验证从 VS 代码进行连接。 它适用于 Public 密钥,但不适用于 Azure AD 身份验证。
有一些禁用本地服务器选项并启用控制台的建议,因此用户可以单击设备登录 link 并输入代码。但是,该模型已被 Microsoft 弃用。所以当前可用的选项是使用 az ssh 模块(或者我找不到的东西)
https://docs.microsoft.com/en-us/azure/active-directory/devices/howto-vm-sign-in-azure-ad-linux
感谢有关如何为此模型配置身份验证的任何指导
您需要按照Microsoft Document中已经提到的步骤为用户启用AD登录。
使用 az-cli 从 vscode 执行 ssh 所必需或需要的步骤:
创建虚拟机时,请确保您有
Login with Azure AD preview
启用并请打开SSH
、HTTP
和HTTPS
端口:在Visual Studio代码中,请确保Azure CLI为az模块安装了扩展
ssh
。您可以按照以下 2 个命令进行安装:az login # login using your Azure AD user credentials az extension add --name ssh # install the ssh extension
请确保在使用
user
登录 Azure AD 之前,您必须为该用户分配rbac
角色,即Virtual Machine Administrator Login/ Virtual Machine User Login
如果您不为用户提供角色,您将面临以下错误:
To assign the roles , 你可以去
VM in Portal >> Access Control(IAM)>>add role assignment>> select VM admin login /VM user login >> add the users and assign
.完成上述操作后,您将能够使用 az 通过 SSH 连接到虚拟机 来自 vscode 的模块如下所示:
命令:
az login # user who will login need to authenticate az ssh vm -n vmname -g resourcegroupname # SSH to the VM
更新:
上述问题的第二部分是如何使用 Azure 广告凭据从 VSCODE 使用远程桌面:
运行 vscode 中的这 2 个命令:
az login az ssh config --ip VMPublicIP --file C:\Users\user\terraform\sshconfig # saves the config file with your azureadcredentials
复制使用 以上命令为 VM 远程 ssh 配置文件。
完成上述操作后,请连接到主机以获取相同的文件 您已为上述步骤配置。