Conceder acesso para criar assinaturas do Azure Enterprise (legado)

Como cliente do Azure com um Enterprise Agreement (EA), pode conceder permissão a outro utilizador ou entidade de serviço para criar subscrições faturadas na sua conta. Neste artigo, aprenderá a usar o Controlo de acesso baseado em funções do Azure (RBAC do Azure) para partilhar a capacidade de criar subscrições e como auditar as criações de subscrições. Tem de ter a função de Proprietário na conta que pretende partilhar.

Nota

  • Essa API só funciona com as APIs herdadas para a criação de assinaturas.
  • A menos que você tenha uma necessidade específica de usar as APIs herdadas, você deve usar as informações para a versão mais recente do GA sobre a versão mais recente da API. Consulte Atribuições de função de conta de inscrição - Colocar para conceder permissão para criar assinaturas EA com a API mais recente.
  • Se estiver a migrar para utilizar as APIs mais recentes, tem de conceder permissões de proprietário novamente com a versão 2019-10-01-preview. A configuração anterior que utiliza as seguintes APIs não é convertida automaticamente para utilização com APIs mais recentes.

Nota

Recomendamos que utilize o módulo do Azure Az PowerShell para interagir com o Azure. Veja Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Conceder acesso

Para criar subscrições numa conta de inscrição, os utilizadores têm de ter a função de Proprietário do RBAC do Azure nessa conta. Pode conceder a um utilizador ou a um grupo de utilizadores a função de Proprietário de RBAC do Azure numa conta de inscrição ao seguir estes passos:

  1. Obter o ID de objeto da conta de inscrição à qual pretende conceder acesso

    Para conceder a outros utilizadores a função de Proprietário de RBAC do Azure numa conta de inscrição, tem de ser o Proprietário da Conta ou um Proprietário de RBAC do Azure da conta.

    Pedido para listar todas as contas de inscrição às quais tem acesso:

    GET https://management.azure.com/providers/Microsoft.Billing/enrollmentAccounts?api-version=2018-03-01-preview
    

    O Azure responde com uma lista de todas as contas de inscrição às quais tem acesso:

    {
      "value": [
        {
          "id": "/providers/Microsoft.Billing/enrollmentAccounts/747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "name": "747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "type": "Microsoft.Billing/enrollmentAccounts",
          "properties": {
            "principalName": "SignUpEngineering@contoso.com"
          }
        },
        {
          "id": "/providers/Microsoft.Billing/enrollmentAccounts/4cd2fcf6-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "name": "4cd2fcf6-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "type": "Microsoft.Billing/enrollmentAccounts",
          "properties": {
            "principalName": "BillingPlatformTeam@contoso.com"
          }
        }
      ]
    }
    

    Utilize a propriedade principalName para identificar a conta à qual pretende conceder acesso de Proprietário de RBAC do Azure. Copie o name dessa conta. Por exemplo, se quisesse conceder aceder acesso de Proprietário de RBAC do Azure à SignUpEngineering@contoso.comconta de inscrição, teria de copiar 747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Trata-se do ID de objeto da conta de inscrição. Cole este valor algures para que possa utilizá-lo no próximo passo como enrollmentAccountObjectId.

    Utilize a propriedade principalName para identificar a conta à qual pretende conceder acesso de Proprietário de RBAC do Azure. Copie o name dessa conta. Por exemplo, se quisesse conceder aceder acesso de Proprietário de RBAC do Azure à SignUpEngineering@contoso.comconta de inscrição, teria de copiar 747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Trata-se do ID de objeto da conta de inscrição. Cole este valor algures para que possa utilizá-lo no próximo passo como enrollmentAccountObjectId.

  2. Obtenha o ID de objeto do utilizador ou do grupo ao qual pretende conceder a função de Proprietário de RBAC do Azure

    1. No portal do Azure, pesquise em Microsoft Entra ID.
    2. Se quiser conceder acesso a um utilizador, selecione Utilizadores no menu à esquerda. Para conceder acesso a um grupo, selecione Grupos.
    3. Selecione o Utilizador ou Grupo ao qual pretende conceder a função de Proprietário de RBAC do Azure.
    4. Se selecionou um Utilizador, encontrará o ID de objeto na página Perfil. Se selecionou um Grupo, o ID do objeto estará na página Descrição Geral. Copie o ObjectID ao selecionar o ícone à direita da caixa de texto. Cole-o num local em que possa utilizá-lo no próximo passo como userObjectId.
  3. Conceder ao utilizador ou ao grupo a função de Proprietário de RBAC do Azure na conta de inscrição

    Através dos valores que recolheu nos dois primeiros passos, conceda ao utilizador ou ao grupo a função de Proprietário de RBAC do Azure na conta de inscrição.

    Execute o comando seguinte, ao substituir <enrollmentAccountObjectId> pelo name que copiou no primeiro passo (747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx). Substitua <userObjectId> pelo ID de objeto que copiou no segundo passo.

    PUT  https://management.azure.com/providers/Microsoft.Billing/enrollmentAccounts/<enrollmentAccountObjectId>/providers/Microsoft.Authorization/roleAssignments/<roleAssignmentGuid>?api-version=2015-07-01
    
    {
      "properties": {
        "roleDefinitionId": "/providers/Microsoft.Billing/enrollmentAccounts/<enrollmentAccountObjectId>/providers/Microsoft.Authorization/roleDefinitions/<ownerRoleDefinitionId>",
        "principalId": "<userObjectId>"
      }
    }
    

    Quando a função de Proprietário é atribuída com êxito no âmbito da conta de inscrição, o Azure responde com as informações da atribuição de função:

    {
      "properties": {
        "roleDefinitionId": "/providers/Microsoft.Billing/enrollmentAccounts/providers/Microsoft.Authorization/roleDefinitions/<ownerRoleDefinitionId>",
        "principalId": "<userObjectId>",
        "scope": "/providers/Microsoft.Billing/enrollmentAccounts/747ddfe5-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "createdOn": "2018-03-05T08:36:26.4014813Z",
        "updatedOn": "2018-03-05T08:36:26.4014813Z",
        "createdBy": "<assignerObjectId>",
        "updatedBy": "<assignerObjectId>"
      },
      "id": "/providers/Microsoft.Billing/enrollmentAccounts/providers/Microsoft.Authorization/roleDefinitions/<ownerRoleDefinitionId>",
      "type": "Microsoft.Authorization/roleAssignments",
      "name": "<roleAssignmentGuid>"
    }
    

Auditar quem criou subscrições através de registos de atividades

Para monitorizar as subscrições criadas através desta API, utilize a API do Registo de Atividades do Inquilino. Atualmente, não é possível utilizar o PowerShell, a CLI ou o portal do Azure para monitorizar a criação de subscrições.

  1. Como administrador de locatário do locatário do Microsoft Entra, eleve o acesso e atribua uma função de Leitor ao usuário auditor sobre o escopo /providers/microsoft.insights/eventtypes/management. Esse acesso está disponível na função de Leitor, na função Contribuidor de monitorização ou numa função personalizada.

  2. Como utilizador de auditoria, chame a API do Registo de Atividades do Inquilino para ver as atividades de criação de subscrições. Exemplo:

    GET "/providers/Microsoft.Insights/eventtypes/management/values?api-version=2015-04-01&$filter=eventTimestamp ge '{greaterThanTimeStamp}' and eventTimestamp le '{lessThanTimestamp}' and eventChannels eq 'Operation' and resourceProvider eq 'Microsoft.Subscription'"
    

Para chamar convenientemente esta API a partir da linha de comandos, experimente ARMClient.

Próximos passos