Criptografia em nível de coluna
A Criptografia em nível de coluna (CLE), anteriormente chamada de Encryption Support, permite e nega o acesso a dados criptografados com base na função do usuário. O Column Level Encryption foi aprimorado no para incluir o gerenciamento básico de chaves usando módulos de criptografia sem custo adicional.
Sobre a Column Level Encryption
A implementação da criptografia em nível de coluna começa com a definição de um ou mais módulos de criptografia em suas instâncias da Now Platform. Este processo inclui a seleção de um algoritmo de criptografia e o fornecimento de uma chave secreta apropriada. O acesso aos dados criptografados posteriormente com o recurso é baseado em função, com a associação dos módulos a funções. Usuários sem a função correta não verão o campo. A Figura 1 ilustra como a criptografia baseada em função funciona.
- O usuário 1 é um membro da Função 1, que fornece acesso ao módulo de criptografia 1. O usuário 1 pode ver o conteúdo do Campo A e do Campo B.
- O Usuário 2 e o Usuário 3 são membros do Grupo 1. O Grupo 1 é um membro da Função 1, o que permite que todos no Grupo 1 acessem o módulo de criptografia 1 e permite que o Usuário 2 e o Usuário 3 vejam o conteúdo do Campo A e do Campo B.
- O Usuário 4 não é membro de nenhum grupo ou função e não tem acesso ao módulo de criptografia 1. O Usuário 4 não só não tem acesso ao Campo A ou Campo B, mas nem mesmo vê esses campos em um formulário. Em uma exibição de lista, os valores estariam em branco.
Também é possível implementar uma criptografia baseada em função consideravelmente mais complexa.
O acesso baseado em função também deve ser implementado de forma apropriada para que esse campo seja acessível aos usuários que estão atribuídos ao módulo de criptografia por meio de uma função.
Todas as chaves de criptografia do cliente para uso com criptografia em nível de coluna são armazenadas no mesmo banco de dados de instância exclusivo no qual os dados criptografados por essas chaves são armazenados. Como medida de segurança adicional, os dados são criptografados novamente com uma chave secundária exclusiva para essa instância, o que reduz o acesso direto à chave de criptografia de qualquer módulo de criptografia, seja por um administrador de instância ou pelaServiceNow.
Dados criptografados no nível de coluna não podem ser filtrados.
- O acesso aos dados criptografados é determinado pela função do usuário.
- Você pode escolher a força do algoritmo de criptografia: AES-128 ou AES-256.
- Você pode criptografar texto de Cadeia de caracteres, campos de Data e Data/Hora, anexos e URLs.
- Os módulos de criptografia fornecem criptografia de preservação de igualdade.
- Chaves fornecidas pelo cliente.
- O acesso à chave permite sessões de usuário com acesso ao módulo, e a chave pode acessar outros processos de back-end ou do usuário do sistema.
- Acesso ao script, Resource Exchange e aplicativo
- Suporte avançado a anexos.
- Disponibilidade de acesso à interface de programação da aplicação (API).
- A criptografia de preservação de ordem ou a criptografia padrão não determinística não são compatíveis.
Edições Standard e Enterprise
A Column Level Encryption está disponível nas versões Standard (padrão) e Enterprise (empresarial). A Column Level Encryption Enterprise é um plug-in pago que fornece recursos adicionais, bem como um número maior de módulos e políticas de acesso ao módulo.
| Column Level Encryption | Column Level Encryption Enterprise |
|---|---|
|
Além dos recursos listados à esquerda, a Column Level Encryption Enterprise oferece suporte a esses recursos adicionais.
|
Métodos de criptografia
Os campos que usam a Column Level Encryption podem incluir:
- Campos de texto criptografado novos ou existentes.
- Os campos Cadeia de caracteres, Data, Data/Hora ou URL incluídos nos registros de configuração de campo criptografados.
A tabela Configurações de campo criptografado [sys_platform_encryption_configuration] contém um registro para cada campo criptografado com a Column Level Encryption. Essa tabela permite que um administrador de segurança monitore todos os campos na instância que usa a Column Level Encryption.
As configurações de campo criptografado podem criptografar campos usando um dos seguintes métodos.
| Método | Descrição |
|---|---|
| Módulo de criptografia único | O campo é criptografado com o método de criptografia definido no campo do módulo de criptografia. Os usuários que não têm acesso ao módulo criptografado não podem exibir ou atualizar valores de campo. |
| Módulos de criptografia múltiplos | O campo é criptografado com o módulo de criptografia do primeiro usuário a inserir dados nesse campo. Se o usuário tiver dois ou mais módulos de criptografia, será usado módulo definido no seletor de módulo de criptografia. Como o módulo de criptografia é definido por registro, os campos em uma lista podem ter módulos de criptografia diferentes. No entanto, em um único registro, o campo pode ser criptografado por apenas um módulo. Quando um campo de texto criptografado é criado, uma configuração de campo criptografada é criada com o método de módulos de criptografia múltiplos. Os campos de texto criptografado e os campos criptografados com o método de módulos de criptografia múltiplos se comportam da mesma forma. Nota: A criptografia em massa não está disponível ao usar o método de módulos de criptografia múltiplos. |
Acesso a dados criptografados
Um módulo de criptografia determina o acesso aos dados criptografados. Os usuários Security_admin podem fornecer uma política de acesso ao módulo de criptografia para um usuário, atribuindo ao usuário uma função associada.
Para monitorar a atribuição de funções, o cliente ou os serviços profissionais podem configurar medidas de segurança. Por exemplo, é possível enviar um e-mail para o gerente de criptografia indicado sempre que uma função associada a um módulo de criptografia for concedida a um usuário.
| Nível de Acesso | Acesso a dados a um campo usando o método de módulo de criptografia único | Acesso a dados a um campo usando o método de módulos de criptografia múltiplos |
|---|---|---|
| Usuário sem módulos de criptografia | O formulário oculta o campo criptografado. Na exibição de lista, o campo aparece vazio e não pode ser editado, mesmo se os dados no campo forem descriptografados. | O formulário oculta o campo criptografado. Na exibição de lista, o campo aparece vazio e não pode ser editado, mesmo se os dados no campo forem descriptografados. |
| Usuário com um módulo de criptografia | Para usar o campo, o usuário deve ter acesso aos módulos de criptografia definidos na configuração do campo criptografado. Se ele não tiver acesso aos módulos de criptografia, o formulário ocultará o campo. Na exibição de lista, o campo aparece vazio e não pode ser editado.
|
O usuário usa automaticamente seus módulos de criptografia com o campo criptografado.
|
| Usuário com dois ou mais módulos de criptografia | Para usar o campo, o usuário deve ter acesso ao módulo de criptografia definido na configuração do campo criptografado. Se não tiver acesso ao módulo de criptografia, o formulário ocultará o campo. Na exibição de lista, o campo aparece vazio e não pode ser editado.
|
O usuário pode selecionar um módulo de criptografia no seletor de módulo de criptografia na barra de boas-vindas.
|
Informações de configuração compatíveis
- Os seguintes tipos de campo podem ser criptografados:
- Anexos
- Data
- Data/Hora
- Texto de cadeia de caracteres
- URL
Nota:Mais tipos de campo estão disponíveis no Enterprise. Consulte para obter detalhes. - Como os módulos estão vinculados a funções e as funções estão vinculadas a usuários, você não tem acesso a chaves de sessões de não usuário. Qualquer coisa executada como um usuário do sistema ou um trabalho programado que não tenha uma sessão de usuário não pode acessar a chave para criptografar ou descriptografar dados.
- Você pode acessar o "valor" ou o "valor de exibição":
- Quando escolhe "valor", o texto cifrado é retornado.
- Quando escolhe "exibir valor", desde que tenha a função correta, o texto não criptografado será retornado.
Muitos scripts nas camadas da aplicação são programados de forma a ignorar essa distinção e usar "valor". Se você não alterar os scripts para usar o valor de exibição, os dados não serão criptografados ou descriptografados.
Criptografia de anexo
- Criptografia de anexo por padrão
-
Para clientes que usam a Column Level Encryption, por padrão os anexos são criptografados em tabelas que têm um tipo de EFC (Encrypted Field Configuration, Configuração de campo criptografado) ativo de Attachment.
Essa criptografia padrão definida pela configuração do EFC significa que os administradores não precisam declarar que um anexo deve ser criptografado no carregamento dessas tabelas manualmente.
- Recusar criptografia padrão
Se você não quiser que os anexos sejam criptografados por padrão com base na configuração do EFC, poderá recusar essa opção entrando em contato com o suporte.
Para recusar este recurso, crie um caso de suporte com suporte e inclua esta declaração em um comentário no registro do caso:
"Eu [nome do cliente] entendo que estou solicitando a desativação de uma prática recomendada de segurança para anexos e que [a empresa do cliente] assume qualquer risco adicional relacionado à configuração e ao uso de anexos não criptografados na aplicação."
Filtragem e pesquisa de campos criptografados
- é
- não é
- está vazio
- não está vazio
Para campos de Data, use o seletor de data para especificar a data:
Para campos de Data/Hora, use o seletor de data e hora para especificar a data e a hora:
Se um usuário com um módulo de criptografia filtrar por igualdade ou pesquisar um valor em uma lista:
- Somente são retornados valores criptografados com um módulo de criptografia disponível para o usuário.
- Os operadores vazio e não vazio retornam todos os registros correspondentes. Os campos criptografados com um módulo de criptografia não disponível para o usuário atual aparecem vazios.
Se um usuário não tiver módulos de criptografia, nenhum registro será retornado.
As opções Mostrar correspondência e Filtrar são compatíveis com listas. Somente correspondências exatas são retornadas ou filtradas.
Exportação de dados de campos criptografados
Ao exportar campos criptografados em uma lista ou formulário para um formato de arquivo, somente os campos criptografados por um módulo de criptografia aparecem no documento exportado. O módulo de criptografia usado deve estar disponível para o usuário atual.
Para desabilitar as exportações de dados criptografados de uma exibição de lista, adicione a propriedade do sistema glide.encryption.export_encrypted_data.allowed e defina o valor como falso.
Criptografia em tabelas do sistema
No momento, a Column Level Encryption não é compatível com a criptografia de campos e anexos de tabelas do sistema (tabelas que começam com sys_).