设置开发人员访问Azure资源的最佳实践

时间:2015-08-11 17:54:23

标签: powershell azure

我想了解管理开发人员的最佳做法是什么?访问客户订阅的资源子集?

我已经搜索了Google和Azure文档,寻找明确的答案,但我还没有看到一篇文章将它们整合在一起。由于Azure仍在快速发展,我常常发现很难确定特定文章是否仍然具有相关性。

总结一下我们的情况:

我的任务是为我们公司为客户开发的网站研究和实施Azure基础架构。目前,我们的经理和我可以通过服务管理员的凭据访问Azure门户网站上客户的整个订阅,即使我们只管理:

  1. 运行Web角色的Azure云服务(具有生产和登台环境的2个实例)。
  2. Azure SQL数据库。
  3. 用于部署,诊断等的Azure Blob存储。
  4. 我们现在正进入一个阶段,团队中的更多开发人员需要访问权限来执行维护类型任务,例如执行VIP交换,检索诊断信息等。

    管理开发者对此类项目的访问权限的正确方法是什么?

    我采取的方法是实施基于角色的访问控制(https://azure.microsoft.com/en-us/documentation/articles/role-based-access-control-configure/

    1. 根据http://blog.kloud.com.au/2015/03/24/moving-resources-between-azure-resource-groups/
    2. 将上面的1,2和3移动到新的资源组中
    3. 为我们公司创建一个新的用户组,比如" GroupXYZ"。
    4. 添加" GroupXYZ"到贡献者角色。
    5. 将特定开发者的公司帐户添加到" GroupXYZ"
    6. 采取基于角色的方法的动机

      1. 据我所知,每个人都可以作为协同管理员进行访问,这意味着他们可以完全访问门户中的每个订阅。
      2. 基于帐户的身份验证优于基于证书的身份验证,因为管理证书会增加复杂性。
      3. 是什么让我质疑我的方法是因为我无法使用PowerShell对Cloud Service执行VIP交换;我收到一条错误消息,指出无法找到证书。

        此类基于角色的帐户是否只能通过Resource Manager Commandlets访问Azure?

        在访问Move-AzureDeployment命令行开关之前,我必须将PowerShell切换到Azure Service Manager(ASM)模式。

        我不确定的是,在使用基于角色的访问控制时,Visual Studio是否可以访问这些资源(在资源组中)。

1 个答案:

答案 0 :(得分:0)

当您将RBAC应用于Azure时,或者只是一般情况下,通过RBAC授予对帐户的访问权限,然后这些帐户只能通过Azure Resource Manager API访问Azure,无论是PowerShell,REST还是VS

使用2.7 SDK时,VS 2015可以通过RBAC访问Azure资源。 VS 2013将很快得到支持。