使用Azure API无需登录(使用角色)

时间:2019-07-16 07:30:55

标签: azure roles azure-cli

我正在尝试从azure中的另一个虚拟机内部列出azure中的虚拟机。我的意思是,我想做的是从前端列出后端成员。但是我不想在前端使用凭据,而是想使用角色。

例如,在AWS中,您可以将角色(EC2 :: DescribeInstance)分配给实例并使用以下命令:

aws ec2 describe-instances --query 'Reservations[].Instances[].[PrivateIpAddress]' --output text --filters Name=instance-state-name,Values=running Name=tag:myapp-member,Values=myapp-backend

我可以运行该命令而无需在任何地方公开我的凭据。

如果我在Azure上运行类似的东西

az vm list

它说我需要先登录。

我找不到如何为实例分配角色。

非常感谢

欢呼

1 个答案:

答案 0 :(得分:1)

出于您的目的,您可以使用VM托管身份登录Azure CLI,这样就不会在VM中存储任何凭据。但是首先,您需要为虚拟机分配角色。要分配角色,可以使用Azure CLI命令az role assignment createAssign a managed identity access to a resource using Azure CLI中的步骤。或仅在Azure门户中,您可以按照Assign a managed identity access to a resource by using the Azure portal中的步骤进行操作。 PowerShell命令也可用。

创建角色后,可以使用Azure CLI命令az login --identity无需凭据登录。

注意:您需要先在VM中安装Azure CLI。