Criar um serviço de chaves personalizado para usar a criptografia do lado do cliente
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Você pode usar suas próprias chaves para criptografar os dados da organização, em vez da criptografia fornecida pelo Google Workspace. Com a criptografia do lado do cliente (CSE) do Google Workspace, a criptografia de arquivos é processada no navegador do cliente antes de ser armazenada no armazenamento baseado na nuvem do Drive. Assim, os servidores do Google não podem acessar suas chaves de criptografia e, portanto, não podem descriptografar seus dados. Para mais detalhes, consulte
Sobre a criptografia do lado do cliente.
Essa API permite controlar as chaves de criptografia de nível superior que protegem seus dados
com um serviço de chaves externo personalizado. Depois de criar um serviço de chaves externo com essa API, os administradores do Google Workspace podem se conectar a ele e ativar a CSE para os usuários.
Terminologia importante
Confira abaixo uma lista de termos comuns usados na API Client-side Encryption do Google Workspace:
- Criptografia do lado do cliente (CSE)
- Criptografia processada no navegador do cliente antes de ser armazenada em
armazenamento baseado na nuvem. Isso protege o arquivo contra leitura pelo provedor de armazenamento. Saiba mais
- Serviço de lista de controle de acesso às chaves (KACLS)
- Seu serviço de chaves externo que usa essa API para controlar o acesso às chaves de criptografia armazenadas em um sistema externo.
- Provedor de identidade (IdP)
- O serviço que autentica usuários antes de eles criptografarem ou acessarem
arquivos criptografados.
Criptografia e descriptografia
- Chave de criptografia de dados (DEK)
- A chave usada pelo Google Workspace no cliente do navegador para criptografar os dados
em si.
- Chave de criptografia de chave (KEK)
- Uma chave do seu serviço usada para criptografar uma chave de criptografia de dados (DEK).
Controle de acesso
- Lista de controle de acesso (ACL)
- Uma lista de usuários ou grupos que podem abrir ou ler um arquivo.
- JSON Web Token (JWT) de autenticação
- Token do portador (JWT: RFC 7516)
emitido pelo parceiro de identidade (IdP) para atestar a identidade de um usuário.
- JSON Web Token (JWT) de autorização
- Token de portador (JWT: RFC 7516)
emitido pelo Google para verificar se o autor da chamada está autorizado a criptografar ou descriptografar um recurso.
- Conjunto de chaves da Web JSON (JWKS)
- Uma URL de endpoint somente leitura que aponta para uma lista de chaves públicas usadas para verificar
JSON Web Tokens (JWTs).
- Perímetro
- Outras verificações realizadas nos tokens de autenticação e autorização
no KACLS para controle de acesso.
Processo de criptografia do lado do cliente
Depois que um administrador ativa a CSE para a organização, os usuários com a CSE ativada podem criar documentos criptografados usando as ferramentas de criação de conteúdo colaborativo do Google Workspace, como Documentos e Planilhas, ou criptografar arquivos enviados para o Google Drive, como PDFs.
Depois que o usuário criptografa um documento ou arquivo:
O Google Workspace gera uma DEK no navegador do cliente para criptografar o
conteúdo.
O Google Workspace envia a DEK e os tokens de autenticação para o KACLS de terceiros
para criptografia, usando um URL fornecido ao administrador da
organização do Google Workspace.
Seu KACLS usa essa API para criptografar a DEK e envia a DEK ofuscada e
criptografada de volta ao Google Workspace.
O Google Workspace armazena os dados criptografados e ofuscados na nuvem.
Somente usuários com acesso à sua KACLS podem acessar os dados.
Para mais detalhes, consulte Criptografar e descriptografar arquivos.
Próximas etapas
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-08-29 UTC.
[null,null,["Última atualização 2025-08-29 UTC."],[[["\u003cp\u003eGoogle Workspace Client-side Encryption (CSE) allows you to encrypt your organization's data with your own keys, preventing Google servers from accessing or decrypting it.\u003c/p\u003e\n"],["\u003cp\u003eThis API enables you to manage the encryption keys via an external key service, giving you control over data access.\u003c/p\u003e\n"],["\u003cp\u003eCSE encrypts files in the user's browser before they are stored in Google Drive, ensuring only authorized users with access to your external key service can decrypt them.\u003c/p\u003e\n"],["\u003cp\u003eWhen a file is encrypted, Google Workspace generates a Data Encryption Key (DEK), which is then encrypted by your external key service and stored with the encrypted data.\u003c/p\u003e\n"],["\u003cp\u003eTo get started, you can configure your external key service and learn how to encrypt and decrypt data using the provided guides.\u003c/p\u003e\n"]]],["Google Workspace Client-side Encryption (CSE) allows users to encrypt data in their browser before cloud storage. This is achieved by using your own external Key Access Control List Service (KACLS). Google Workspace generates a Data Encryption Key (DEK) and sends it to your KACLS for encryption with a Key Encryption Key (KEK). Your service then returns the encrypted DEK to Google Workspace. This ensures that only users with KACLS access can decrypt the stored data.\n"],null,["# Build a custom key service for client-side encryption\n\nYou can use your own encryption keys to encrypt your organization's data,\ninstead of using the encryption that Google Workspace provides. With Google Workspace Client-side Encryption (CSE), file encryption is handled in the\nclient's browser before it's stored in Drive's cloud-based storage. That way,\nGoogle servers can't access your encryption keys and, therefore, can't decrypt\nyour data. For more details, see\n[About client-side encryption](https://support.google.com/a/answer/10741897#zippy=%2Cbasic-setup-steps-for-cse).\n\nThis API lets you control the top-level encryption keys that protect your data\nwith a custom external key service. After you create an external key service\nwith this API, Google Workspace administrators can connect to it and enable CSE\nfor their users.\n\nImportant terminology\n---------------------\n\nBelow is a list of common terms used in the Google Workspace Client-side Encryption API:\n\n*Client-side encryption (CSE)*\n: Encryption that's handled in the client's browser before it's stored in\n cloud-based storage. This protects the file from being read by the storage\n provider. [Learn more](https://support.google.com/a/answer/10741897#zippy=%2Chow-is-cse-different-from-end-to-end-ee-encryption)\n\n*Key Access Control List Service (KACLS)*\n: Your external key service that uses this API to control access to encryption\n keys stored in an external system.\n\n*Identity Provider (IdP)*\n: The service that authenticates users before they can encrypt files or access\n encrypted files.\n\n### Encryption \\& decryption\n\n*Data Encryption Key (DEK)*\n: The key used by Google Workspace in the browser client to encrypt the data\n itself.\n\n*Key Encryption Key (KEK)*\n: A key from your service used to encrypt a Data Encryption Key (DEK).\n\n### Access control\n\n*Access Control List (ACL)*\n: A list of users or groups that can open or read a file.\n\n*Authentication JSON Web Token (JWT)*\n: Bearer token ([JWT: RFC 7516](https://tools.ietf.org/html/rfc7516))\n issued by the identity partner (IdP) to attest a user's identity.\n\n*Authorization JSON Web Token (JWT)*\n: Bearer token ([JWT: RFC 7516](https://tools.ietf.org/html/rfc7516))\n issued by Google to verify that the caller is authorized to encrypt or decrypt a resource.\n\n*JSON Web Key Set (JWKS)*\n: A read-only endpoint URL that points to a list of public keys used to verify\n JSON Web Tokens (JWT).\n\n*Perimeter*\n: Additional checks performed on the authentication and authorization tokens\n within the KACLS for access control.\n\nClient-side encryption process\n------------------------------\n\nAfter an administrator enables CSE for their organization, users for whom CSE is\nenabled can choose to create encrypted documents using the Google Workspace\ncollaborative content creation tools, like Docs and Sheets, or encrypt files\nthey upload to Google Drive, such as PDFs.\n\nAfter the user encrypts a document or file:\n\n1. Google Workspace generates a DEK in the client browser to encrypt the\n content.\n\n2. Google Workspace sends the DEK and authentication tokens to your third-party\n KACLS for encryption, using a URL you provide to the\n Google Workspace organization's administrator.\n\n3. Your KACLS uses this API to encrypt the DEK, then sends the obfuscated,\n encrypted DEK back to Google Workspace.\n\n4. Google Workspace stores the obfuscated, encrypted data in the cloud.\n Only users with access to your KACLS are able to access the data.\n\nFor more details, see [Encrypt and decrypt files](/workspace/cse/guides/encrypt-and-decrypt-data).\n\nNext steps\n----------\n\n- Learn how to [configure your service](/workspace/cse/guides/configure-service).\n- Learn how to [encrypt \\& decrypt data](/workspace/cse/guides/encrypt-and-decrypt-data)."]]