Depois que um nível de acesso personalizado é criado, ele pode ser gerenciado da mesma maneira que os níveis de acesso básico.
Para detalhes sobre como criar expressões de Common Expression Language (CEL) para níveis de acesso personalizados, consulte a especificação de nível de acesso personalizado.
Console
Para criar um nível de acesso personalizado:
Abra a página Access Context Manager no console Google Cloud .
Se solicitado, selecione a organização.
Na parte superior da página do Access Context Manager, clique em Novo.
No painel Novo nível de acesso, faça o seguinte:
Na caixa Título do nível de acesso, digite um título para o nível de acesso. O título precisa ter no máximo 50 caracteres, começar com uma letra e pode conter apenas números, letras, sublinhados e espaços.
Ao lado de Criar condições em, selecione Modo avançado.
Na seção Condições, insira as expressões para seu nível de acesso personalizado. A condição precisa ser resolvida como um único valor booleano.
Para ver exemplos e mais informações sobre o suporte à Common Expression Language (CEL) e os níveis de acesso personalizados, consulte a Especificação do nível de acesso personalizado.
Clique em Save.
gcloud
Antes de começar
- Crie uma política de acesso para a organização caso ainda não exista uma.
Para criar um nível de acesso personalizado usando a ferramenta de linha de comando gcloud,
use o comando gcloud access-context-manager levels create.
gcloud access-context-manager levels create LEVEL_NAME \ --title=TITLE \ --custom-level-spec=FILE \ --description=DESCRIPTION \ --policy=POLICY_NAME
Onde:
LEVEL_NAME é um nome exclusivo para o nível de acesso. Ele precisa começar com uma letra e incluir apenas letras, números e sublinhados; O nome pode ter no máximo 50 caracteres.
TITLE é o título curto e legível para o nível de acesso.
FILE é um arquivo .yaml em que está sua expressão CEL formatada como um único par de chave-valor:
expression: "CEL_EXPRESSION".Para ver exemplos e mais informações sobre o suporte à Common Expression Language (CEL) e os níveis de acesso personalizados, consulte a Especificação do nível de acesso personalizado.
DESCRIPTION (opcional) é uma descrição legível do nível de acesso.
POLICY_NAME é o nome numérico da política de acesso da organização.
Se quiser, inclua qualquer uma das
sinalizações de gcloud.
Arquivo YAML custom-level-spec
Ao usar a ferramenta de linha de comando gcloud para criar um nível de acesso personalizado, é necessário fornecer
um arquivo .yaml para a opção custom-level-spec. O arquivo .yaml define
uma expressão CEL que resolve para um único valor booleano. O arquivo .yaml
precisa conter um único par de chave-valor formatado como
expression: "CEL_EXPRESSION". O valor de expression precisa
ser uma string.
Exemplo de arquivo YAML
expression: "device.encryption_status == DeviceEncryptionStatus.ENCRYPTED && (origin.region_code in ['US'] || device.is_admin_approved_device)"
Exemplo de comando
gcloud access-context-manager levels create Custom_Trust \
--custom-level-spec=customspec.yaml \
--description="Custom access level for corp." \
--title="Custom Trust Level" \
--policy=1521580097614100
REST
Antes de começar
- Crie uma política de acesso para a organização caso ainda não exista uma.
Para criar um nível de acesso personalizado, use o
método
accessPolicies.accessLevels.create.
Corpo da solicitação
No corpo da solicitação da chamada, inclua uma instância do objeto
AccessLevel.
{
"name": string,
"title": string,
"description": string,
"custom": {
"expr": {
"expression": string,
"title": string,
"description": string
}
}
}
Para o campo custom, crie um objeto que inclua as expressões CEL
para seu nível de acesso personalizado. A expressão completa precisa ser resolvida com um
valor booleano. Os campos title e description são opcionais.
Exemplo
{
"name": "example_custom_level",
"title": "Example custom level",
"description": "An example custom access level.",
"custom": {
"expr": {
"expression": "device.is_corp_owned == true || (device.os_type != OsType.OS_UNSPECIFIED && device.is_admin_approved_device == true)",
"title": "Check for known devices",
"description": "Permits requests from corp-owned devices and admin-approved devices with a known OS."
}
}
}
RPC
Antes de começar
- Crie uma política de acesso para a organização caso ainda não exista uma.
Para criar um nível de acesso personalizado, chame
CreateAccessLevel.
Para o campo access_level, inclua uma instância de AccessLevel.
| Campos | |||||
|---|---|---|---|---|---|
name
|
|
||||
title
|
|
||||
description
|
|
||||
custom
|
|
||||