Definir limites de segurança do cache - AWS Encryption SDK

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Definir limites de segurança do cache

Quando você implementa o armazenamento em cache de chave de dados, precisa configurar os limites de segurança impostos pelo CMM de armazenamento em cache.

Os limites de segurança ajudam a limitar duração do uso de cada chave de dados e o volume de dados protegido em cada chave de dados. O CMM de armazenamento em cache retorna as chaves de dados armazenadas em cache somente quando a entrada do cache estiver em conformidade com todos os limites de segurança. Se a entrada do cache exceder o limite, ela não será usada para a operação atual e será removida do cache assim que possível. O primeiro uso de cada chave de dados (antes do armazenamento em cache) é isento desses limites.

Como regra, use a quantidade mínima de armazenamento em cache necessária para atender a suas metas de custos e de desempenho.

O AWS Encryption SDK armazena somente chaves de dados criptografadas usando uma função de derivação de chaves. Além disso, ele estabelece limites máximos para alguns dos valores de limites. Essas restrições garantem que as chaves de dados não sejam reutilizadas além dos limites criptográficos. No entanto, como as chaves de dados de texto sem criptografia são armazenadas em cache (na memória, por padrão), tente minimizar o tempo em que as chaves são salvas. Além disso, tente limitar os dados que poderão ser expostos se uma chave estiver comprometida.

Para obter exemplos de como definir limites de segurança de cache, consulte :AWS Encryption SDK: como decidir se o cache de chaves de dados é adequado para sua aplicação no Blog de segurança da AWS.

nota

O CMM do armazenamento em cache impõe todos os limites a seguir. Se você não especificar um valor opcional, o CMM de armazenamento em cache usará o valor padrão.

Para desativar temporariamente o armazenamento em cache de chaves de dados, as implementações de Java e Python do AWS Encryption SDK fornecem um cache de materiais criptográficos nulo (cache nulo). O cache nulo retorna um erro para cada solicitação GET e não responde a solicitações PUT. Recomendamos usar o cache nulo em vez de definir a capacidade do cache ou os limites de segurança como 0. Para obter mais informações, consulte o cache nulo em Java e Python.

Idade máxima (obrigatório)

Determina por quanto tempo uma entrada armazenada em cache pode ser usada, a partir do momento em que foi adicionada. Este valor é obrigatório. Digite um valor maior que 0. O AWS Encryption SDK não limita o valor de idade máxima.

Todas as implementações de linguagem do AWS Encryption SDK definem a idade máxima em segundos, exceto o AWS Encryption SDK para JavaScript, que usa milissegundos.

Use o intervalo mais curto que ainda permita que seu aplicativo se beneficie do cache. Você pode usar o limite máximo de idade como uma política de rotação de chaves. Use-o para limitar a reutilização de chaves de dados, minimizar a exposição de material criptográfico e remover chaves de dados cujas políticas podem ter sido alteradas enquanto estavam armazenadas em cache.

Número máximo de mensagens criptografadas (opcional)

Especifica o número máximo de mensagens que uma chave de dados armazenada em cache pode criptografar. Este valor é opcional. Digite um valor entre 1 e 2^32 mensagens. O valor padrão é 2^32 mensagens.

Defina o número de mensagens protegidas por cada chave armazenada em cache para que seja grande o suficiente para obter o valor da reutilização, mas pequeno o suficiente para limitar o número de mensagens que podem ser expostas se uma chave for comprometida.

Número máximo de bytes criptografados (opcional)

Especifica o número máximo de bytes que uma chave de dados armazenada em cache pode criptografar. Este valor é opcional. Digite um valor entre 0 e 2^63 - 1. O valor padrão é 2^63 - 1. Um valor de 0 permite usar armazenamento em cache de chaves de dados somente quando você está criptografando strings de mensagem vazias.

Os bytes na solicitação atual são incluídos ao avaliar esse limite. Se os bytes processados, mais os bytes atuais, excederem o limite, a chave de dados armazenada em cache será removida do cache, mesmo que ela tenha sido usada em uma solicitação menor.