Ative o acesso baseado em certificados com os seus certificados empresariais

Esta página descreve como ativar o acesso baseado em certificados (CBA) com os seus certificados empresariais.

Se não tiver uma infraestrutura de chave pública (PKI), pode usar certificados aprovisionados pela validação de pontos finais.

Um requisito importante do modelo de acesso de confiança zero é permitir o acesso apenas a dispositivos autorizados. A CBA do Acesso sensível ao contexto usa certificados e as respetivas chaves privadas armazenadas num repositório de chaves seguro no dispositivo para determinar se o dispositivo está autorizado. Para ativar esta funcionalidade, conclua os procedimentos seguintes.

Antes de começar

Certifique-se de que criou níveis de acesso de CBA para o seu Google Cloud projeto. Se precisar de criar níveis de acesso, consulte o artigo Crie níveis de acesso para acesso baseado em certificados.

Certifique-se de que aplica a CBA aos seus Google Cloud recursos através de um dos seguintes métodos:

Quando aplica a CBA aos seus Google Cloud recursos, o acesso aos seus Google Cloud recursos requer que um utilizador autorizado também apresente um certificado de dispositivo válido.

Carregue as âncoras de fidedignidade

Para permitir que o Acesso sensível ao contexto recolha e valide o certificado empresarial de um dispositivo, tem de carregar as âncoras de confiança usadas para emitir o certificado do dispositivo. As âncoras de confiança são o certificado da AC de raiz autoassinado e os certificados intermediários e subordinados relevantes. Para carregar os pontos de confiança, conclua os seguintes passos:

  1. Na consola do administrador Google, aceda a Dispositivos > Redes > Certificados e, de seguida, selecione a unidade organizacional para a qual quer carregar as âncoras de confiança. Certifique-se de que a unidade organizacional selecionada contém os utilizadores aos quais quer conceder acesso.

  2. Selecione Adicionar certificado e, de seguida, introduza um nome para o seu certificado de raiz.

  3. Clique em Carregar para carregar o certificado.

  4. Selecione Ativar validação de pontos finais e, de seguida, clique em Adicionar.

O certificado a carregar deve ser o certificado da AC, que é o emissor dos certificados de cliente instalados nos seus dispositivos corporativos. Se a sua empresa ainda não tiver um certificado de AC e os certificados de cliente correspondentes, pode criá-los através do Google Cloud serviço de autoridade de certificação. Os passos para instalar certificados de cliente em arquivos de chaves nativos são diferentes para cada sistema operativo e estão fora do âmbito deste documento.

Configure o navegador Chrome dos utilizadores para usar o certificado empresarial

Siga as instruções em Configure a validação de pontos finais para instalar a extensão de validação de pontos finais para o Chrome para todos os utilizadores na sua organização. Esta extensão é usada para sincronizar os metadados dos certificados com o back-end de Google Cloud.

Depois de configurar a extensão do navegador, configure a política do Chrome do AutoSelectCertificateForURLs para permitir que a validação de pontos finais procure o certificado do dispositivo e o recolha através do Chrome.

  1. Certifique-se de que o navegador Chrome dos utilizadores é gerido pelo Chrome Browser Cloud Management:

  2. Na consola do administrador, adicione a política AutoSelectCertificateForUrls:

    1. Aceda a Dispositivos > Chrome > Definições > Definições de utilizadores e navegadores > Certificados de cliente.

    2. Selecione a unidade organizacional adequada.

    3. Adicione uma política.

      O exemplo seguinte adiciona a política AutoSelectCertificateForUrls:

      {"pattern":"https://[*.]clients6.google.com","filter":{"ISSUER":{"CN":<CERT_ISSUER>}}}
      {"pattern":"https://console-secure.cloud.google.com","filter":{"ISSUER":{"CN":<CERT_ISSUER>}}}
      {"pattern":"https://storage.mtls.cloud.google.com","filter":{"ISSUER":{"CN":<CERT_ISSUER>}}}
      

      No exemplo, CERT_ISSUER é o nome comum do seu certificado de AC.

Após esta configuração, os utilizadores podem aceder a recursos Google Cloud protegidos com o navegador Chrome em console-secure.cloud.google.com.

Valide a configuração de políticas (opcional)

  1. No navegador Chrome, introduza chrome://policy.

  2. Verifique se AutoSelectCertificateForUrls está listado em Políticas do Chrome.

  3. Verifique se o valor de Aplica-se a é Máquina. No sistema operativo Chrome, o valor de Aplica-se a é Utilizador atual.

  4. Certifique-se de que o Estado da política não tem um Conflito. Se o estado tiver um conflito, consulte o artigo Compreenda a gestão de políticas do Chrome para obter informações.

Configure ferramentas de linha de comandos para usar o seu certificado empresarial

Se os utilizadores na sua organização precisarem de aceder a Google Cloud recursos a partir da linha de comandos, têm de concluir os seguintes procedimentos para ativar a CBA com o seu certificado empresarial nas respetivas ferramentas de linha de comandos.

As seguintes ferramentas de linha de comandos são suportadas:

  • CLI do Google Cloud

  • CLI Terraform (a CLI gcloud continua a ser necessária para instalar e configurar componentes auxiliares).

Uma vez que os certificados de dispositivos estão armazenados em keystores nativas, a CLI Google Cloud é fornecida com um componente de código aberto denominado proxy de certificados empresariais (ECP) para interagir com as APIs de gestão de chaves.

Se estiver a usar um sistema Windows, tem de ter a biblioteca de tempo de execução do Visual Studio C++ instalada.

Os seguintes sistemas operativos e os respetivos arquivos de chaves nativos são suportados:

  • macOS com Porta-chaves

  • Microsoft Windows com CryptoAPI

  • Linux com PKCS #11

A ECP tem de ser configurada com as informações de metadados necessárias para localizar o certificado nos arquivos de chaves.

Instale e configure o ECP com a CLI do Google Cloud

  1. Instale a CLI Google Cloud e ative a CBA. Instale com a opção bundled python ativada.

  2. Para macOS e Linux, execute o install.shscript depois de o transferir:

    $ ./google-cloud-sdk/install.sh
    
  3. Instale o componente auxiliar do ECP com a CLI do Google Cloud:

    gcloud components install enterprise-certificate-proxy
    
  4. Inicialize a configuração do certificado ECP com a CLI do Google Cloud:

Linux

$ gcloud auth enterprise-certificate-config create linux
  --label=<CERT_LABEL> --module=<PKCS11_MODULE_PATH> --slot=<SLOT_ID>

Exemplo:

$ gcloud auth enterprise-certificate-config create linux
  --label="Google Endpoint Verification" --module=/usr/lib/x86_64-linux-gnu/pkcs11/libcredentialkit_pkcs11.so.0 --slot=0x1234567

macOS

$ gcloud auth enterprise-certificate-config create macos
  --issuer=<CERT_ISSUER>

Exemplo:

$ gcloud auth enterprise-certificate-config create macos
  --issuer="Google Endpoint Verification"

Windows

$ gcloud auth enterprise-certificate-config create windows
  --issuer=<CERT_ISSUER> --provider=<PROVIDER> --store=<STORE>

Exemplo:

$ gcloud auth enterprise-certificate-config create windows
  --issuer="Google Endpoint Verification" --provider=current_user --store=MY

A configuração do ECP também pode ser feita manualmente. É armazenado como um ficheiro JSON na seguinte localização no dispositivo do utilizador:

  • Linux e macOS: ~/.config/gcloud/certificate_config.json

  • Windows: %APPDATA%\gcloud\certificate_config.json

Consulte a documentação do ECP no GitHub para ver exemplos adicionais da configuração e do esquema.

Linux

{
  "cert_configs": {
    "pkcs11": {
      "label": "<CERT_LABEL>",
      "slot": "<SLOT_ID>",
      "module": "<PKCS11_MODULE_PATH>"
    }
  },
  "libs": {
    "ecp": "/usr/lib/google-cloud-sdk/bin/ecp",
    "ecp_client": "/usr/lib/google-cloud-sdk/platform/enterprise_cert/libecp.so",
    "tls_offload": "/usr/lib/google-cloud-sdk/platform/enterprise_cert/libtls_offload.so"
  }
}

macOS

{
  "cert_configs": {
      "macos_keychain": {
        "issuer": "<CERT_ISSUER>"
      }
  },
  "libs": {
    "ecp": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/bin/ecp",
    "ecp_client": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/platform/enterprise_cert/libecp.dylib",
    "tls_offload": "<YOUR_GCLOUD_INSTALL_PATH>/google-cloud-sdk/platform/enterprise_cert/libtls_offload.dylib"
  }
}

Windows

{
  "cert_configs": {
    "windows_store": {
      "store": "MY",
      "provider": "current_user",
      "issuer": "<CERT_ISSUER>"
    }
  },
  "libs": {
    "ecp": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/bin/ecp.exe",
    "ecp_client": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/platform/enterprise_cert/libecp.dll",
    "tls_offload": "C:/Users/<USERNAME>/AppData/Local/Google/Cloud SDK/google-cloud-sdk/platform/enterprise_cert/libtls_offload.dll"
  }
}

Após esta configuração, os utilizadores podem aceder a recursos Google Cloud protegidos através de ferramentas de linha de comandos ativando a flag CBA.

Para ativar a CBA para a CLI gcloud, defina a propriedade context_aware/use_client_certificate como true.

Para ativar a CBA para todas as outras ferramentas de linha de comandos, incluindo o Terraform, defina a variável de ambiente GOOGLE_API_USE_CLIENT_CERTIFICATE como true.

O que se segue?