Gerir níveis de acesso

Esta página descreve como gerir os níveis de acesso existentes. Pode:

Antes de começar

Indicar níveis de acesso

Consola

Para listar todos os níveis de acesso, abra a página Access Context Manager na consola e, em seguida, se lhe for pedido, selecione a sua organização. Google Cloud Os níveis de acesso da sua organização são apresentados numa grelha na página, incluindo detalhes sobre a configuração de cada nível de acesso.

Abra a página Gestor de acesso sensível ao contexto

gcloud

Para apresentar uma lista de todos os níveis de acesso, use o comando list.

gcloud access-context-manager levels list \
  [--policy=POLICY_NAME]

Onde:

  • POLICY_NAME é o nome da política de acesso da sua organização. Este valor só é obrigatório se não tiver definido uma política de acesso predefinida.

O resultado vai ter um aspeto semelhante a:

NAME             TITLE                  LEVEL_TYPE
Device_Trust     Device_Trust Extended  Basic
Service_Group_A  Service_Group_A        Basic

API

Para listar todos os níveis de acesso de uma política, chame o método accessLevels.list.

GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels

Onde:

  • POLICY_NAME é o nome da política de acesso da sua organização.

Corpo do pedido

O corpo do pedido tem de estar vazio.

Parâmetros opcionais

Opcionalmente, inclua um ou mais dos seguintes parâmetros de consulta.

Parâmetros
pageSize

number

Por predefinição, a lista de níveis de acesso devolvidos por accessLevels.list é paginada. Cada página está limitada a 100 níveis de acesso.

Pode usar este parâmetro para modificar o número de níveis de acesso devolvidos por página.

pageToken

string

Se o número de níveis de acesso devolvidos pela sua chamada exceder o tamanho da página, o corpo da resposta inclui um token de página.

Pode usar este parâmetro numa chamada subsequente para obter a página seguinte de resultados.

accessLevelFormat

enum(LevelFormat)

Normalmente, os níveis de acesso são devolvidos tal como estão definidos, ou seja, como BasicLevel ou CustomLevel.

Pode especificar o valor CEL para este parâmetro para devolver BasicLevels como CustomLevels na linguagem de expressão comum da nuvem.

Corpo da resposta

Se for bem-sucedido, o corpo da resposta da chamada contém um objeto AccessLevels que indica os níveis de acesso e uma string nextPageToken. nextPageToken só tem um valor se o número de níveis de acesso devolvidos exceder o tamanho da página. Caso contrário, é devolvido nextPageToken como uma string vazia.

Indicar níveis de acesso (formatados)

Com a ferramenta de linha de comandos gcloud, pode obter uma lista dos seus níveis de acesso no formato YAML ou JSON.

Para obter uma lista formatada dos níveis de acesso, use o comando list.

gcloud access-context-manager levels list \
  --format=FORMAT \
  [--policy=POLICY_NAME]

Onde:

  • FORMAT é um dos seguintes valores:

    • list (formato YAML)

    • json (formato JSON)

  • POLICY_NAME é o nome da política de acesso da sua organização. Este valor só é obrigatório se não tiver definido uma política de acesso predefinida.

O resultado YAML tem um aspeto semelhante ao seguinte:

- basic: {'conditions': [{'ipSubnetworks': ['8.8.0/24']}]}
  description: Level for corp access.
  name: accessPolicies/165717541651/accessLevels/corp_level
  title: Corp Level
- basic: {'combiningFunction': 'OR', 'conditions': [{'ipSubnetworks': ['8.8.0/24']}]}
  description: Level for net access.
  name: accessPolicies/165717541651/accessLevels/net_level
  title: Net Level

O resultado JSON tem um aspeto semelhante a:

[
  {
    "basic": {
      "conditions": [
        {
          "ipSubnetworks": [
            "8.8.0/24"
          ]
        }
      ]
    },
    "description": "Level for corp access.",
    "name": "accessPolicies/165717541651/accessLevels/corp_level",
    "title": "Corp Level"
  },
  {
    "basic": {
      "combiningFunction": "OR",
      "conditions": [
        {
          "ipSubnetworks": [
            "8.8.0/24"
          ]
        }
      ]
    },
    "description": "Level for net access.",
    "name": "accessPolicies/165717541651/accessLevels/net_level",
    "title": "Net Level"
  }
]

Descreva um nível de acesso

Consola

Usando a Google Cloud consola, consulte os passos para listar os níveis de acesso. Quando lista os seus níveis de acesso, são fornecidos detalhes na grelha apresentada.

gcloud

A listagem dos níveis de acesso apenas fornece o respetivo nome, título e tipo de nível. Para obter informações detalhadas sobre o que um nível faz realmente, use o comando describe.

gcloud access-context-manager levels describe LEVEL_NAME \
    [--policy=POLICY_NAME]

Onde:

  • LEVEL_NAME é o nome do nível de acesso que quer descrever.

  • POLICY_NAME é o nome da política de acesso da sua organização. Este valor só é obrigatório se não tiver definido uma política de acesso predefinida.

O comando imprime informações sobre o nível formatado como YAML. Por exemplo, se o nível restringir o acesso a determinadas versões do sistema operativo, o resultado pode ser semelhante ao seguinte:

basic:
  conditions:
  - devicePolicy:
      allowedEncryptionStatuses:
      - ENCRYPTED
      osConstraints:
      - minimumVersion: 10.13.6
        osType: DESKTOP_MAC
      - minimumVersion: 10.0.18219
        osType: DESKTOP_WINDOWS
      - minimumVersion: 68.0.3440
        osType: DESKTOP_CHROME_OS
      requireScreenlock: true
name: accessPolicies/330193482019/accessLevels/Device_Trust
title: Device_Trust Extended

API

A listagem dos níveis de acesso apenas fornece o nome, o título e o tipo dos níveis. Para obter informações detalhadas sobre um nível de acesso, chame accessLevels.get.

GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME

Onde:

  • POLICY_NAME é o nome da política de acesso da sua organização.

  • LEVEL_NAME é o nome do nível de acesso que quer descrever.

Corpo do pedido

O corpo do pedido tem de estar vazio.

Parâmetros opcionais

Opcionalmente, inclua o parâmetro de consulta accessLevelFormat. Normalmente, os níveis de acesso são devolvidos tal como estão definidos, como BasicLevel ou CustomLevel.

Pode especificar o valor CEL para este parâmetro para devolver BasicLevels como CustomLevels na linguagem de expressão comum da nuvem.

Corpo da resposta

Se for bem-sucedido, o corpo da resposta da chamada contém um recurso AccessLevel que inclui detalhes sobre o que o nível de acesso faz, a última vez que o nível foi atualizado e muito mais.

Atualize um nível de acesso

Esta secção descreve como atualizar níveis de acesso individuais. Para atualizar todos os níveis de acesso da sua organização numa única operação, consulte o artigo Fazer alterações em massa aos níveis de acesso.

Consola

Para atualizar um nível de acesso:

  1. Abra a página Access Context Manager na Google Cloud consola.

    Abra a página Gestor de acesso sensível ao contexto

  2. Se lhe for pedido, selecione a sua organização.

  3. Na grelha, clique no nome do nível de acesso que quer atualizar.

  4. No painel Editar nível de acesso, faça alterações ao nível de acesso.

    Para ver uma lista completa dos atributos que pode adicionar ou modificar, leia acerca dos atributos do nível de acesso.

  5. Clique em Guardar.

    Além de atualizar ou remover quaisquer condições existentes, pode adicionar novas condições e novos atributos às condições existentes.

gcloud

Use o comando update para atualizar um nível de acesso.

Nível de acesso básico:

gcloud access-context-manager levels update LEVEL_NAME \
    --basic-level-spec=FILE \
    [--policy=POLICY_NAME]

Nível de acesso personalizado:

gcloud access-context-manager levels update LEVEL_NAME \
    --custom-level-spec=FILE \
    [--policy=POLICY_NAME]

Onde:

  • LEVEL_NAME é o nome do nível de acesso que quer atualizar.

  • FILE é o nome de um ficheiro .yaml que define as condições para o nível de acesso (para níveis de acesso básicos) ou uma expressão CEL que é resolvida para um único valor booleano (para níveis de acesso personalizados).

    Para uma lista completa dos atributos que pode usar nas condições de nível de acesso básico, leia acerca dos atributos de nível de acesso.

  • POLICY_NAME é o nome da política de acesso da sua organização. Este valor só é obrigatório se não tiver definido uma política de acesso predefinida.

  • Pode incluir uma ou mais das seguintes opções.

    Opções
    combine-function

    Esta opção só é usada para níveis de acesso básicos.

    Determina como as condições são combinadas.

    Valores válidos: AND, OR

    description

    Uma descrição detalhada do nível de acesso.

    title

    Um título curto para o nível de acesso. O título do nível de acesso é apresentado na consola Google Cloud .

    Pode incluir qualquer uma das flags ao nível do gcloud.

Exemplo de comando

gcloud access-context-manager levels update Device_Trust \
    --basic-level-spec=corpdevspec.yaml \
    --combine-function=OR \
    --description='Access level that conforms to updated corporate spec.' \
    --title='Device_Trust Extended' \
    --policy=1034095178592

API

Para atualizar um nível de acesso, chame accessLevels.patch.

PATCH https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME?updateMask=FIELDS

Onde:

  • POLICY_NAME é o nome da política de acesso da sua organização.

  • LEVEL_NAME é o nome do nível de acesso que quer descrever.

  • FIELDS é uma lista separada por vírgulas de nomes de campos totalmente qualificados que está a atualizar.

Corpo do pedido

O corpo do pedido tem de incluir um recurso AccessLevel que especifica as alterações que quer fazer ao nível de acesso.

Corpo da resposta

Se for bem-sucedido, o corpo da resposta da chamada contém um recurso Operation que fornece detalhes sobre a operação de patch.

Elimine um nível de acesso

Consola

Para eliminar um nível de acesso:

  1. Abra a página Access Context Manager na Google Cloud consola

    Abra a página Gestor de acesso sensível ao contexto

  2. Se lhe for pedido, selecione a sua organização.

  3. Na grelha, na linha do nível de acesso que quer eliminar, clique no botão .

  4. Clique em Eliminar.

  5. Na caixa de diálogo apresentada, confirme que quer eliminar o nível de acesso.

gcloud

Para eliminar um nível de acesso:

  1. Use o comando delete para eliminar um nível de acesso.

    gcloud access-context-manager levels delete LEVEL_NAME \
        [--policy=POLICY_NAME]

    Onde:

    • LEVEL_NAME é o nome do nível de acesso que quer eliminar.

    • POLICY_NAME é o nome da política de acesso da sua organização. Este valor só é obrigatório se não tiver definido uma política de acesso predefinida.

  2. Confirme que quer eliminar o nível de acesso.

    Por exemplo:

    You are about to delete level Device_Trust
    
    Do you want to continue (Y/n)?
    
    You should see output similar to the following:
    
    
    Waiting for operation [accessPolicies/330193482019/accessLevels/Device_Trust/delete/1531171874311645] to complete...done.
    Deleted level [Device_Trust].
    

API

Para eliminar um nível de acesso, chame accessLevels.delete.

DELETE https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME

Onde:

  • POLICY_NAME é o nome da política de acesso da sua organização.

  • LEVEL_NAME é o nome do nível de acesso que quer descrever.

Corpo do pedido

O corpo do pedido tem de estar vazio.

Corpo da resposta

Se for bem-sucedido, o corpo da resposta da chamada contém um recurso Operation que fornece detalhes sobre a operação de eliminação.