Neste documento, mostramos como proteger o acesso ao console do Google Cloud e às APIs do Google Cloud usando as regras baseadas em contexto.
O acesso baseado no contexto para o console do Google Cloud e as APIs do Google Cloud restringe o acesso ao console do Google Cloud e às APIs do Google Cloud com regras baseadas no contexto. Ele faz parte do BeyondCorp Enterprise e ajuda a garantir que pessoas e grupos dentro da organização que atendam aos requisitos de acesso definidos possam acessar o console do Google Cloud e as APIs do Google Cloud (incluindo o acesso da Google Cloud CLI).
Para proteger o console do Google Cloud e as APIs do Google Cloud, siga estas etapas:
- [Opcional] Implante a Verificação de endpoints nos dispositivos da sua organização.
- Crie um nível de acesso no Access Context Manager.
- Crie um grupo de usuários vinculados por restrições baseadas no contexto.
- Receba as permissões necessárias de gerenciamento de identidade e acesso.
- Crie uma vinculação de acesso que aplique regras com base no contexto para o console do Google Cloud e as APIs do Google Cloud.
[Opcional] Implantar a verificação de endpoints
Se você quiser proteger o acesso ao console do Google Cloud e às APIs do Google Cloud usando atributos do dispositivo, implante a Verificação de endpoints nos dispositivos da sua organização.
A Verificação de endpoints é executada como uma extensão do Chrome em computadores e laptops para usuários do MacOS, Windows e Linux. Um administrador pode implantá-lo nos dispositivos da empresa usando o Google Admin Console ou os membros da organização podem instalá-lo por conta própria.
Criar um nível de acesso
É necessário definir um nível de acesso que possa ser usado ao determinar o acesso ao console do Google Cloud e às APIs do Google Cloud criando um nível de acesso básico no Access Context Manager.
Criar um grupo de usuários
Crie um grupo de usuários que precisa estar vinculado por restrições baseadas no contexto. Todos os usuários desse grupo que também são membros da sua organização precisam atender ao nível de acesso criado anteriormente para acessar o console do Google Cloud e as APIs do Google Cloud.
Conceder as permissões necessárias do IAM
Conceda as permissões do IAM no nível da organização que serão necessárias para criar vinculações de acesso do Access Context Manager.
Console
Acesse a página IAM e administrador no Console do Google Google Cloud.
Clique em Adicionar e configure o seguinte:
- Novos membros: especifique o usuário ou grupo em que você quer conceder as permissões.
- Selecione um papel: selecione Access Context Manager > Administrador de vinculação de acesso à nuvem.
Clique em Save.
gcloud
Verifique se você está autenticado com privilégios suficientes para adicionar permissões do IAM no nível da organização. Você precisa, no mínimo, do papel Administrador da organização.
Depois de confirmar que você tem as permissões certas, faça login com:
gcloud auth login
Atribua o papel
GcpAccessAdmin
executando o seguinte comando:gcloud organizations add-iam-policy-binding ORG_ID \ --member=user:EMAIL \ --role=roles/accesscontextmanager.gcpAccessAdmin
ORG_ID
é o ID da organização. Se você ainda não tiver o ID da organização, use o seguinte comando para encontrá-lo:gcloud organizations list
EMAIL
é o endereço de e-mail da pessoa ou do grupo a que você quer conceder o papel.
Criar uma vinculação de acesso
Uma vinculação de acesso é um mapeamento entre o grupo de usuários criado anteriormente e o nível de acesso do Access Context Manager definido para acessar o console do Google Cloud e as APIs do Google Cloud.
É possível criar uma vinculação de acesso de uma das seguintes maneiras:
- Vinculação de acesso entre um grupo e um nível de acesso.
- Vinculação de acesso entre um grupo e um nível de acesso com configuração de simulação. Com a configuração de simulação, é possível criar uma vinculação de acesso entre um grupo e um nível de acesso de simulação ou entre um grupo, um nível de acesso e um nível de acesso de simulação.
Criar uma vinculação com um nível de acesso
Console
Acesse a página do BeyondCorp Enterprise no console do Google Cloud.
Escolha uma organização e clique em Selecionar.
Clique em Gerenciar acesso para escolher quais grupos de usuários terão acesso.
Clique em Adicionar e configure o seguinte:
- Grupos de participantes: especifique o grupo a que você quer conceder acesso. Somente os grupos que ainda não estiverem vinculados a um nível de acesso estarão disponíveis para seleção.
- Selecionar níveis de acesso: escolha o nível de acesso a ser aplicado ao grupo.
Clique em Save.
gcloud
Consulte a Google Cloud CLI para mais informações sobre esse e outros comandos gcloud access-context-manager cloud-bindings, incluindo outras opções de sinalização.
gcloud access-context-manager cloud-bindings create \
--group-key GROUP_ID \
--level ACCESS_LEVEL \
--organization ORG_ID
Em que:
-
GROUP_ID
é o ID do grupo de usuários criado anteriormente.Se você não tiver o ID de grupo disponível, é possível recuperá-lo chamando o método
get
no recursoGroups
. -
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. Se a propriedadeaccess-context-manager/organization
não tiver sido definida, substituaORG_ID
na sinalização opcional--organization
pelo ID da organização usada ao criar o papelGcpAccessAdmin
. -
POLICY_ID
é o ID da política de acesso da organização. -
ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
API
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. -
GROUP_ID
é o ID do grupo de usuários criado anteriormente.Se você não tiver o ID de grupo disponível, é possível recuperá-lo chamando o método
get
no recursoGroups
. -
POLICY_ID
é o ID da política de acesso da organização. -
ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
Método HTTP e URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Corpo JSON da solicitação:
{ "groupKey": "GROUP_ID", "accessLevels": [ "ACCESS_LEVEL" ], }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ] }
Criar uma vinculação de acesso com configuração de simulação
É possível criar uma vinculação de acesso com configuração de simulação para entender o impacto dos níveis de acesso no seu ambiente nos seguintes cenários:
- Para avaliar o impacto de um nível de acesso antes de aplicá-lo, crie uma vinculação de acesso com um nível de acesso de simulação.
- Para aplicar um nível de acesso e avaliar o impacto de um nível de acesso de simulação ao mesmo tempo, crie uma vinculação de acesso com um nível de acesso ativo e um nível de acesso de simulação.
Uma vinculação com um nível de acesso de simulação não impede o acesso, mas registra as violações desse nível. Para ver os detalhes do registro, consulte os registros de negação.
Criar uma vinculação de acesso com um nível de acesso de simulação
gcloud
gcloud access-context-manager cloud-bindings create \
--group-key = GROUP_ID \
--dry-run-level = DRY_RUN_ACCESS_LEVEL \
--organization ORG_ID
Em que:
-
GROUP_ID
é o ID do grupo de usuários criado anteriormente.Se você não tiver o ID de grupo disponível, é possível recuperá-lo chamando o método
get
no recursoGroups
. -
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. Se a propriedadeaccess-context-manager/organization
não tiver sido definida, substituaORG_ID
na sinalização opcional--organization
pelo ID da organização usada ao criar o papelGcpAccessAdmin
. -
POLICY_ID
é o ID da política de acesso da organização. -
DRY_RUN_ACCESS_LEVEL
é oACCESS_LEVEL
para o qual você quer entender o efeito.ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
API
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. -
GROUP_ID
é o ID do grupo de usuários criado anteriormente.Se você não tiver o ID de grupo disponível, é possível recuperá-lo chamando o método
get
no recursoGroups
. -
POLICY_ID
é o ID da política de acesso da organização. -
DRY_RUN_ACCESS_LEVEL
é oACCESS_LEVEL
para o qual você quer entender o efeito.ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
Método HTTP e URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Corpo JSON da solicitação:
{ "groupKey": "GROUP_ID", "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Criar uma vinculação de acesso com um nível de acesso e um de simulação
gcloud
gcloud access-context-manager cloud-bindings create \
--group-key = GROUP_ID \
--level = ACCESS_LEVEL \
--dry-run-level = DRY_RUN_ACCESS_LEVEL \
--organization ORG_ID
Em que:
-
GROUP_ID
é o ID do grupo de usuários criado anteriormente.Se você não tiver o ID de grupo disponível, é possível recuperá-lo chamando o método
get
no recursoGroups
. -
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. Se a propriedadeaccess-context-manager/organization
não tiver sido definida, substituaORG_ID
na sinalização opcional--organization
pelo ID da organização usada ao criar o papelGcpAccessAdmin
. -
POLICY_ID
é o ID da política de acesso da organização. -
ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso. -
DRY_RUN_ACCESS_LEVEL
é oACCESS_LEVEL
para o qual você quer entender o efeito.ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
API
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. -
GROUP_ID
é o ID do grupo de usuários criado anteriormente.Se você não tiver o ID de grupo disponível, é possível recuperá-lo chamando o método
get
no recursoGroups
. -
POLICY_ID
é o ID da política de acesso da organização. -
ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso. -
DRY_RUN_ACCESS_LEVEL
é oACCESS_LEVEL
para o qual você quer entender o efeito.ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
Método HTTP e URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Corpo JSON da solicitação:
{ "groupKey": "GROUP_ID", "accessLevels": [ "ACCESS_LEVEL" ], "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Ver os registros de negação
Depois de criar uma configuração de simulação, é possível analisar os registros para identificar onde ela nega acesso.
A tabela a seguir lista os campos de registro que podem ser usados para criar e executar a consulta a fim de receber os registros:
Nome do campo | Descrição |
---|---|
protoPayload > authenticationInfo > principalEmail |
ID do e-mail do principal para o qual o acesso foi negado. |
protoPayload > metadata > deniedApplications |
Nome do aplicativo para o qual o acesso foi negado. |
protoPayload > metadata > evaluationResult |
O resultado da avaliação da política de acesso ativa. Valores possíveis: GRANTED ou DENIED . |
protoPayload > metadata > appliedAccessLevels |
Os níveis de acesso aplicados exigidos pela política de acesso ativa. |
protoPayload > metadata > appliedDryRunAccessLevels |
Os níveis de acesso aplicados exigidos pela política de acesso de simulação. |
protoPayload > metadata > dryRunEvaluationResult |
O resultado da avaliação da política de acesso de simulação, que indica a
ação pretendida quando a política de acesso é aplicada.
Valores possíveis: GRANTED ou DENIED . |
Para ver detalhes sobre como criar uma consulta para registros, consulte Linguagem de consulta do Logging.
Console
No menu de navegação do console do Google Cloud, clique em Logging e em Explorador de registros.
No campo Consulta, insira um filtro de consulta como o filtro a seguir e clique em Executar consulta.
severity="ERROR" AND (protoPayload.metadata.evaluationResult=DENIED OR protoPayload.metadata.dryRunEvaluationResult=DENIED) AND protoPayload.metadata.@type="type.googleapis.com/google.cloud.audit.ContextAwareAccessAuditMetadata" AND protoPayload.metadata.deniedApplications.name="CLOUD_PLATFORM"
Veja os registros em Resultados da consulta.
gcloud
Para ver registros usando a CLI gcloud, execute um comando como este:
gcloud logging read 'severity="ERROR" AND
(protoPayload.metadata.evaluationResult=DENIED OR protoPayload.metadata.dryRunEvaluationResult=DENIED) AND
protoPayload.metadata.@type="type.googleapis.com/google.cloud.audit.ContextAwareAccessAuditMetadata" AND
protoPayload.metadata.deniedApplications.name="CLOUD_PLATFORM"'
Gerenciar vinculações de acesso
Depois que as vinculações de acesso são criadas para um grupo de usuários, o acesso ao console do Google Cloud e às APIs do Google Cloud é controlado com base na satisfação do nível de acesso vinculado.
É possível visualizar os detalhes da vinculação de acesso que você criou, editá-la ou excluí-la.
Conferir vinculações de acesso
Console
É possível visualizar todas as vinculações de acesso da organização e os detalhes de uma vinculação de acesso.
gcloud
Para ver todas as vinculações de acesso, execute o seguinte comando:
gcloud access-context-manager cloud-bindings list \ --organization ORG_ID
Em que:
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. . Se a propriedadeaccess-context-manager/organization
não tiver sido definida, substituaORG_ID
na sinalização opcional--organization
pelo ID da organização usada ao criar o papelGcpAccessAdmin
.Para visualizar os detalhes de uma vinculação de acesso, execute o seguinte comando:
gcloud access-context-manager cloud-bindings describe \ --binding=BINDING_ID
Em que:
BINDING_ID
é o ID da vinculação de acesso ou do identificador totalmente qualificado para a vinculação de acesso.
API
Confira todas as vinculações de acesso:
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. Se a propriedadeaccess-context-manager/organization
não tiver sido definida, substituaORG_ID
na sinalização opcional--organization
pelo ID da organização usada ao criar o papelGcpAccessAdmin
.
Método HTTP e URL:
GET https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Para enviar a solicitação, escolha uma destas opções:
curl
execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"PowerShell
execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand ContentVocê receberá uma resposta JSON semelhante a esta:
{ "name": string, "groupKey": string, "accessLevels": [ string ] "dryRunAccessLevels": [ string ] }
-
Confira os detalhes de uma vinculação de acesso:
Método HTTP e URL:
GET https://accesscontextmanager.googleapis.com/v1/BINDING_ID
Para enviar a solicitação, escolha uma destas opções:
curl
execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/BINDING_ID"PowerShell
execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/BINDING_ID" | Select-Object -Expand ContentVocê receberá uma resposta JSON semelhante a esta:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Atualizar vinculações de acesso
Console
Você pode atualizar uma vinculação de acesso conforme necessário.
gcloud
Para atualizar uma vinculação de acesso, como alterar o nível de acesso, execute o seguinte comando:
gcloud access-context-manager cloud-bindings update \ --binding ACCESS_BINDING \ --level ACCESS_LEVEL
Em que:
-
ACCESS_BINDING
está no formatoorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. -
ORG_ID
é o ID da organização usado ao criar o papelGcpAccessAdmin
. -
ACCESS_BINDING_NAME
é a string exclusiva retornada para o identificadorname
quando a vinculação de acesso foi criada. - Substitua o valor por ACCESS_LEVEL conforme necessário.
ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
-
Para atualizar uma vinculação de acesso com um nível de acesso de simulação, execute o seguinte comando:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --dry-run-level=DRY_RUN_ACCESS_LEVEL
Substitua o valor por
DRY_RUN_ACCESS_LEVEL
conforme necessário. Ele está no formatoaccessPolicies/
.POLICY_ID
/accessLevels/DRY_ACCESS_LEVEL_NAME
Para atualizar uma vinculação de acesso e alterar o nível de acesso e o nível de acesso de simulação, execute o seguinte comando:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --level=`ACCESS_LEVEL` --dry-run-level=DRY_RUN_ACCESS_LEVEL
Substitua o valor por
ACCESS_LEVEL
eDRY_RUN_ACCESS_LEVEL
conforme necessário.ACCESS_LEVEL
eDRY_RUN_ACCESS_LEVEL
estão no formatoaccessPolicies/
, ePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
DRY_RUN_ACCESS_LEVEL
é o mesmo queACCESS_LEVEL
.Para remover um nível de acesso de simulação de uma vinculação de acesso, execute o seguinte comando:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --dry-run-level=
API
Atualize uma vinculação de acesso, como para alterar o nível de acesso:
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ACCESS_BINDING_NAME
é a string exclusiva retornada para o identificadorname
quando a vinculação de acesso foi criada. -
ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
Método HTTP e URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels
Corpo JSON da solicitação:
{ "accessLevels": [ "ACCESS_LEVEL" ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels"PowerShell
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels" | Select-Object -Expand ContentVocê receberá uma resposta JSON semelhante a esta:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ] }
-
Atualize uma vinculação de acesso com o nível de acesso de simulação:
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ACCESS_BINDING_NAME
é a string exclusiva retornada para o identificadorname
quando a vinculação de acesso foi criada. -
DRY_RUN_ACCESS_LEVEL
é oACCESS_LEVEL
para o qual você quer entender o efeito.ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
Método HTTP e URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels
Corpo JSON da solicitação:
{ "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels"PowerShell
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels" | Select-Object -Expand ContentVocê receberá uma resposta JSON semelhante a esta:
{ name: "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", group_key: "045jfvxd0ybeul8", dry_run_access_levels: [ "accessPolicies/305009197125/accessLevels/another" ] }
-
Atualize uma vinculação de acesso e altere o nível de acesso e o nível de acesso de simulação:
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ACCESS_BINDING_NAME
é a string exclusiva retornada para o identificadorname
quando a vinculação de acesso foi criada. -
ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso. -
DRY_RUN_ACCESS_LEVEL
é oACCESS_LEVEL
para o qual você quer entender o efeito.ACCESS_LEVEL
está no formatoaccessPolicies/
. Os valores dePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
podem ser encontrados no Access Context Manager quando você criou o nível de acesso.
Método HTTP e URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels
Corpo JSON da solicitação:
{ "accessLevels": [ "ACCESS_LEVEL" ], "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels"PowerShell
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels" | Select-Object -Expand ContentVocê receberá uma resposta JSON semelhante a esta:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
-
Remova um nível de acesso de simulação de uma vinculação de acesso:
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ACCESS_BINDING_NAME
é a string exclusiva retornada para o identificadorname
quando a vinculação de acesso foi criada.
Método HTTP e URL:
PATCH PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels
Corpo JSON da solicitação:
{ "dryRunAccessLevels": [ ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels"PowerShell
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels" | Select-Object -Expand ContentVocê receberá um código de status de êxito (2xx) e uma resposta vazia.
-
Excluir vinculações de acesso
Console
É possível excluir uma vinculação de acesso sempre que necessário.
gcloud
gcloud access-context-manager cloud-bindings delete \
--binding ACCESS_BINDING
Em que:
-
ACCESS_BINDING
está no formatoorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. -
ACCESS_BINDING_NAME
é a string exclusiva retornada para o identificadorname
quando a vinculação de acesso foi criada.
API
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
ACCESS_BINDING_NAME
é a string exclusiva retornada para o identificadorname
quando a vinculação de acesso foi criada.
Método HTTP e URL:
DELETE https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME
Para enviar a solicitação, escolha uma destas opções:
curl
execute o seguinte comando:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME"
PowerShell
execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME" | Select-Object -Expand Content
Você receberá um código de status de êxito (2xx) e uma resposta vazia.
Perguntas frequentes
Quanto tempo leva para uma vinculação de acesso recém-criada entrar em vigor?
Isso pode levar até 24 horas.
O que acontecerá se eu excluir um grupo com uma vinculação de acesso?
O grupo e a vinculação são excluídos, e todos os usuários do grupo terão acesso permitido.
O que acontecerá se eu excluir o nível de acesso usado em uma vinculação de acesso?
O nível de acesso não poderá ser atendido, e todos os usuários do grupo vinculado serão negados.
O que acontece quando um usuário está em vários grupos que têm vinculações de acesso?
O usuário só precisa atender ao nível de acesso de um desses grupos para conseguir acesso.
E os usuários que não fazem parte da minha organização?
Qualquer pessoa que não faça parte da sua organização, mesmo que você as tenha adicionado ao grupo de usuários que precisa estar vinculado pelas restrições baseadas no contexto, não está sujeita à vinculação de acesso.
A seguir
- Para saber mais sobre o registro de auditoria do BeyondCorp Enterprise, consulte Geração de registros de auditoria.
- Para saber mais sobre a geração de registros de auditoria no Access Context Manager, incluindo um resumo de quais operações da API são registradas para ações administrativas, consulte Informações sobre a geração de registros de auditoria do Access Context Manager.