Azure PowerShell 或 CLI 命令为用户提供对特定 Web 应用程序的所有者访问权限

Azure PowerShell or CLI command to Provide a User with Owner access to a specific Web Application

我有大约 100 个使用 Azure PowerShell 和 CLI 创建的 Azure Web 应用程序和 Azure Functions,现在我需要将这些 Web 应用程序的所有者访问权限分配给用户(每个 Web 应用程序的单独用户)

我无法为此找到任何示例,大多数示例都指向分配资源组级别的访问权限,而不是特定资源。

该任务可在 Azure 门户中完成,只需要 PowerShell 或 CLI 命令将用户所有者或贡献者权限分配给这些特定资源。

如果可能请提供示例命令

对于电源 Shell,您可以使用 New-AzureRmRoleAssignment 来执行此操作。

例如

New-AzureRmRoleAssignment -SignInName "test@hotmail.com" -RoleDefinitionName Owner -Scope "/subscriptions/*************/resourceGroups/shuiapp/providers/Microsoft.Web/sites/shuicli"

New-AzureRmRoleAssignment -ObjectId "859f0f40-057b-4afc-9d05-fe8b3933ae87" -RoleDefinitionName Owner -Scope "/subscriptions/*****************/resourceGroups/shuiapp/providers/Microsoft.Web/sites/shuicli"

注意:您可以使用 cmdlet get-azureaduser.

获取您的用户对象 ID

Azure CLI

您可以使用 az role assignment create 来做到这一点。

例如

az role assignment create --assignee <user object id> --role Owner --scope "/subscriptions/3b4d41fa-e91d-4bc7-bc11-13d221b3b77d/resourceGroups/shuiapp/providers/Microsoft.Web/sites/shuicli"

注意:如果您的用户是 Azure AD 用户,您可以使用 az ad user list 获取用户的对象 ID。如果您的用户是服务主体,您可以使用 az ad sp list 获取对象 ID。