Criar e gerenciar o Apigee Spaces

Esta página se aplica à Apigee e à Apigee híbrida.

Confira a documentação da Apigee Edge.

Esta página descreve como criar espaços da Apigee na sua organização para gerenciar políticas de gerenciamento de identidade e acesso (IAM) para recursos da API Apigee em grande escala.

Este guia descreve as etapas necessárias para:

Para saber mais sobre os benefícios do uso do Apigee Spaces para gerenciar seus recursos de API, consulte Apigee Spaces.

Antes de começar

Antes de começar a usar os espaços:

  • Provisionar a Apigee. Confirme se a organização de assinatura ou pagamento por uso da Apigee que você quer usar está provisionada. Para saber mais sobre as etapas necessárias para provisionar a Apigee, consulte Introdução ao provisionamento.
  • Acessar suas credenciais de autenticação. Antes de executar comandos para criar e gerenciar espaços na linha de comando, receba suas credenciais de autenticação gcloud usando o seguinte comando:
    export TOKEN=$(gcloud auth print-access-token)

Papéis e permissões necessárias

Verifique se você tem os seguintes papéis no projeto: Apigee > Administrador da organização do Apigee

Verificar os papéis

  1. No console do Google Cloud , acesse a página IAM.

    Acessar IAM
  2. Selecione o projeto.
  3. Na coluna Principal, encontre todas as linhas que identificam você ou um grupo no qual você está incluído. Para saber em quais grupos você está incluído, entre em contato com o administrador.

  4. Em todas as linhas que especificam ou incluem você, verifique a coluna Papel para ver se a lista de papéis inclui os papéis necessários.

Conceder os papéis

  1. No console do Google Cloud , acesse a página IAM.

    Acessar IAM
  2. Selecione o projeto.
  3. Clique em Conceder acesso.
  4. No campo Novos principais, digite seu identificador de usuário. Normalmente, é o endereço de e-mail de uma Conta do Google.

  5. Clique em Selecionar um papel e pesquise o papel.
  6. Para conceder outros papéis, adicione-os clicando em Adicionar outro papel.
  7. Clique em Salvar.

Criar um espaço

Para realizar essa tarefa, você precisa da permissão apigee.spaces.create. Essa permissão está incluída no papel Apigee Organization Admin.

Crie um espaço na sua organização da Apigee usando o console da Apigee ou a API, conforme descrito nas seções a seguir.

Console da Apigee

Para criar um espaço usando a interface da Apigee:

  1. Na interface da Apigee no console do Cloud, acesse a página Espaços.
    Acessar o Spaces
  2. Clique em Criar. O painel Adicionar detalhes do espaço é aberto.
  3. No campo Nome, insira um identificador exclusivo para o espaço. O nome precisa ter menos de 63 caracteres, começar com uma letra minúscula e conter apenas caracteres minúsculos. Para requisitos completos de nomenclatura, consulte AIP-122: Nomes de recursos.
  4. (Opcional) No campo Nome de exibição, insira um rótulo legível para o espaço.
  5. Clique em Adicionar.

Depois da criação, os membros da organização vão ver o espaço como um parâmetro disponível ao criar recursos de API.

API Apigee

Para criar um espaço na sua organização da Apigee, use o seguinte comando:

curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces" \
    --data-raw '{
       "name":"SPACE_NAME",
       "displayName":"DISPLAY_NAME"
    }'

Em que:

  • ORG_NAME é o nome da organização da Apigee;
  • SPACE_NAME é o nome e o identificador exclusivo do espaço. O nome precisa ter menos de 63 caracteres, começar com uma letra minúscula e conter apenas caracteres minúsculos. Para requisitos completos de nomenclatura, consulte AIP-122: Nomes de recursos.
  • DISPLAY_NAME é o nome legível do espaço como aparece na interface da Apigee no console do Cloud.

Gerenciar participantes e funções em um espaço

Depois de criar um espaço, você pode adicionar membros da equipe e atribuir as funções do IAM necessárias para criar e gerenciar recursos de API.

Adicionar um membro da organização a um espaço

Para realizar essa tarefa, você precisa da permissão apigee.spaces.setIamPolicy.

Console da Apigee

Para conceder a um membro acesso a um espaço usando a interface da Apigee:

  1. Na interface da Apigee no console do Cloud, acesse a página Espaços.
  2. Clique no nome do espaço que você quer gerenciar.
  3. Na seção Detalhes de acesso, clique em Conceder acesso.
  4. No campo Adicionar membros, insira os endereços de e-mail dos usuários ou grupos que você quer adicionar.
  5. Em Atribuir função, selecione Editor de conteúdo ou Leitor de conteúdo.
  6. Clique em Adicionar.

API Apigee

Para adicionar um participante da organização a um espaço e atribuir um papel do IAM, use este comando:

curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME:setIamPolicy" -d \
      '{
        "policy":{
          "bindings":[
            {
              "members": ["user:USER_EMAIL"],
              "role": "roles/IAM_ROLE"
            }
          ]
        }
      }'

Em que:

  • ORG_NAME é o nome da organização da Apigee;
  • SPACE_NAME é o nome do espaço.
  • USER_EMAIL é o endereço de e-mail do usuário que você está adicionando ao espaço. Para adicionar um grupo do Google em vez de um único usuário, mude o prefixo de user: para group: e informe o endereço de e-mail do grupo.
  • IAM_ROLE é o nome do papel do IAM que você está atribuindo ao membro.

Remover participantes de um espaço

Para realizar essa tarefa, você precisa da permissão apigee.spaces.setIamPolicy.

Console da Apigee

Para remover um membro de um espaço usando a interface da Apigee:

  1. Na interface da Apigee no console do Cloud, acesse a página Espaços e clique no nome do espaço.
  2. Na tabela Detalhes de acesso, marque a caixa de seleção ao lado de um ou mais membros que você quer remover.
  3. Clique em Remover acesso.
  4. Na caixa de diálogo, clique em Confirmar.

API Apigee

Para remover participantes de um espaço, defina uma nova política do IAM para o espaço com a lista revisada de participantes usando o método setIamPolicy. O uso desse método cria uma nova política do IAM que substitui a política atual.

Por exemplo, para atualizar os membros do espaço da equipe blue, primeiro verifique a política atual do IAM usando o seguinte comando:

curl -X GET -H "Authorization: Bearer $TOKEN" \
  "https://apigee.googleapis.com/v1/organizations/acme/spaces/blue:getIamPolicy"

A saída do comando retorna a política atual do IAM para o espaço e tem esta aparência:

{
  "version": "0",
  "bindings": [
    {
      "role": "roles/apigee.spaceContentEditor",
      "members": [
        "group:blue-team@acme.com",
        "user:user-a@acme.com",
        "user:user-b@acme.com",
        "user:user-c@acme.com"
      ]
    }
  ]
}

Para remover user-b@acme.com do espaço, use o seguinte comando:

curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \
  "https://apigee.googleapis.com/v1/organizations/acme/spaces/blue:setIamPolicy" -d \
    '{
      "policy":{
        "bindings":[
          {
            "members": [
              "group:blue-team@acme.com",
              "user:user-a@acme.com",
              "user:user-c@acme.com"
            ],
            "role": "roles/apigee.spaceContentEditor"
          }
        ]
      }
    }'

A nova política do IAM para o espaço não vai mais incluir user-b@acme.com.

Para remover um membro de um grupo incluído em um espaço, primeiro remova o membro do grupo e, em seguida, execute novamente o comando setIamPolicy para atualizar a política do IAM do espaço com a associação correta para o alias de e-mail do grupo.

Listar todos os espaços de uma organização

Para realizar essa tarefa, você precisa da permissão apigee.spaces.list.

Console da Apigee

Para conferir todos os espaços, acesse a página Espaços na interface da Apigee no console do Cloud.

Acessar o Spaces

A tabela "Espaços" lista todos os espaços da sua organização, incluindo o Nome, o Nome de exibição e o número total de Participantes.

API Apigee

Para listar todos os espaços em uma organização da Apigee, use o seguinte comando:

curl -X GET -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces"

Em que:

  • ORG_NAME é o nome da organização da Apigee;

Conferir detalhes do espaço

Para realizar essa tarefa, você precisa da permissão apigee.spaces.get.

Console da Apigee

Para conferir os detalhes do espaço na interface da Apigee:

  1. Na interface da Apigee no console do Cloud, acesse a página Espaços.
  2. Clique no nome do espaço que você quer acessar. A página de detalhes mostra o Nome, o Nome de exibição, os detalhes de acesso e a lista de Membros.

API Apigee

Para conferir os detalhes de um espaço, use o seguinte comando:

curl -X GET -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME"

Em que:

  • ORG_NAME é o nome da organização da Apigee;
  • SPACE_NAME é o nome do espaço.

Atualizar um espaço

Para realizar essa tarefa, você precisa da permissão apigee.spaces.update.

Você pode modificar o Nome de exibição de um espaço. O nome exclusivo não pode ser mudado após a criação.

Console da Apigee

Para atualizar um espaço na interface da Apigee:

  1. Na interface da Apigee no console do Cloud, acesse a página Espaços e clique no nome do espaço que você quer atualizar.
  2. Clique no botão Editar (ícone de lápis) ao lado do cabeçalho "Detalhes do espaço".
  3. Modifique o Nome de exibição conforme necessário.
  4. Clique em Salvar.

API Apigee

Para atualizar um espaço usando a API, use o seguinte comando:

curl -X PATCH -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME" \
      --data-raw '{
        "displayName":"DISPLAY_NAME"
      }'

Em que:

  • ORG_NAME é o nome da organização da Apigee;
  • SPACE_NAME é o nome do espaço.
  • DISPLAY_NAME é o novo nome de exibição do espaço.

Excluir um espaço

Para realizar essa tarefa, você precisa da permissão apigee.spaces.delete.

Console da Apigee

Para excluir um espaço usando a interface da Apigee:

  1. Na interface da Apigee no console do Cloud, acesse a página Espaços.
  2. Clique em Excluir na linha do espaço que você quer excluir.
  3. Na caixa de diálogo de confirmação, digite o nome exato do espaço para confirmar.
  4. Clique em Excluir.

API Apigee

Antes de excluir um espaço usando a API, verifique se todos os recursos nele foram excluídos ou movidos.

curl -X DELETE -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME"

Em que:

  • ORG_NAME é o nome da organização da Apigee;
  • SPACE_NAME é o nome do espaço.

Se você tentar excluir um espaço que ainda tenha recursos ativos, a exclusão vai falhar com uma resposta semelhante a esta:

{
  "error": {
    "code": 400,
    "message": "Space \"red\" has resources associated with it. Please delete the resources before deleting the space.",
    "status": "FAILED_PRECONDITION"
  }
}

Para resolver esse erro, exclua ou mova todos os recursos do espaço antes de tentar excluir.

A seguir