Implementar a Criptografia no Nível da Mensagem no Oracle Integration Cloud Usando o OCI Vault

A Criptografia no Nível da Mensagem (MLE) é uma técnica de segurança usada para proteger a confidencialidade e a integridade de uma mensagem durante a transmissão. Ele envolve o uso de algoritmos de criptografia para alterar o conteúdo de uma mensagem de modo que apenas o destinatário desejado, com as chaves de decriptografia, possa lê-lo.

A API Rest não tem monitoramento de estado pela arquitetura, o que significa que o servidor não está mantendo uma sessão e não tem informações sobre o cliente. Na solicitação, o cliente precisa enviar todas as informações para permitir que o servidor responda. Ao trabalhar com a API Rest e a segurança, o foco está na autenticação, autorização e confidencialidade.

Para autenticação e autorização, há protocolos e melhores práticas que variam de Chaves de API, Autenticação Básica, Token JWT a oAuth. Por confidencialidade, você pode ativar o TLS (Transport Level Security), o processo de proteger a comunicação em uma rede criptografando o tráfego. É por isso que a maioria das APIs Rest impõe HTTPS em vez de HTTP simples. Todos eles têm seus próprios prós e contras e têm suporte do Oracle Integration Cloud predefinido.

Embora a segurança em nível de rede atenda aos requisitos na maior parte do tempo, há momentos em que é necessária a imposição de criptografia em nível de carga útil (por exemplo, quando inclui informações confidenciais, como: informações de identificação pessoal [PII], números de cartão de crédito, detalhes de conta bancária, registros médicos ou similares). É por isso que muitos gateways de pagamento (Visa, MasterCard, entidades governamentais) impõem o MLE para APIs Rest que contêm dados confidenciais.

O Oracle Integration Cloud fornece recursos prontos para uso para atender a autenticação, autorização e TLS. O MLE pode ser obtido usando o OCI Vault.

Arquitetura

Essa arquitetura de referência demonstra como usar o OCI Vault para obter o MLE no Oracle Integration Cloud.

O OCI Vault é um serviço de gerenciamento de criptografia que armazena e gerencia chaves de criptografia e segredos para acessar recursos com segurança. Ele fornece APIs para permitir o gerenciamento de chaves, bem como a assinatura, a criptografia e a decriptografia de dados usando essas chaves.

Ao trabalhar com criptografia, há dois tipos fundamentais de sistemas para proteger dados.

  • Criptografia simétrica usa a mesma chave (privada) para criptografia e decriptografia. O remetente e o destinatário devem ter a mesma chave secreta usada para criptografar e decriptografar os dados. Isso significa que, se alguém interceptar a chave, poderá decriptografar os dados.
  • Criptografia assimétrica, por outro lado, usa duas chaves diferentes: uma chave pública e uma chave privada. O remetente usa a chave pública do destinatário para criptografar os dados, e o destinatário usa a chave privada para descriptografá-los. A chave privada é mantida secreta e nunca compartilhada, o que a torna muito mais segura do que a criptografia simétrica.

A criptografia simétrica tem a vantagem da velocidade, mas é menos segura, pois usa a mesma chave para criptografia e decriptografia. A criptografia assimétrica, embora mais lenta, é mais segura porque a chave privada usada para decriptografia nunca é compartilhada e só pode ser acessada pelo destinatário.

O OCI Vault suporta esses algoritmos de forma de chave.

Algoritmo de Forma da Chave Descrição
AES (Advanced Encryption Standard) As chaves AES são chaves simétricas que você pode usar para criptografar dados.
Rivest-Shamir-Adleman (RSA) Chaves RSA são chaves assimétricas, também conhecidas como pares de chaves, que consistem em uma chave pública e uma chave privada que você pode usar para criptografar dados em trânsito, assinar dados e verificar a integridade dos dados assinados.
Algoritmo de assinatura digital de criptografia de curva elíptica (ECDSA) Chaves ECDSA são chaves assimétricas que você pode usar para assinar dados e verificar a integridade dos dados assinados.

Às vezes, você precisa usar simétrico e assimétrico. Por exemplo, um cliente compartilha com você sua chave pública RSA; você gera e usa uma chave privada AES para criptografar os dados; e você criptografa a chave privada com a chave pública RSA do cliente, que você envia na carga útil. Como o cliente não compartilhou sua chave privada RSA, só eles podem decriptografar os dados, primeiro descriptografando a chave AES e depois usando-a para decriptografar a carga útil. Isso é feito quando o tamanho do payload é maior que uma chave RSA pode criptografar.

O OCI Vault permite importar ou criar suas próprias chaves de criptografia principais. Quando você usa material de chave importado, permanece responsável pelo material de chave, permitindo que o OCI Vault use uma cópia dele. Consulte Explorar Mais para obter informações sobre a importação de chaves.

O OCI Vault fornece várias APIs que podem ser usadas pelo Oracle Integration Cloud. Veja Explore Mais para a API de gerenciamento de chaves do vault. Aqui estão algumas das APIs que são usadas comumente em cenários de criptografia no nível da mensagem.

API Descrição
Criptografar Criptografa dados usando detalhes de criptografia fornecidos como parte da solicitação.
Descriptografar Descriptografa dados usando detalhes de decriptografia fornecidos como parte da solicitação.
Assinar Cria uma assinatura digital para uma mensagem ou compilação de mensagens usando a chave privada de um par de chaves pública-privada, também conhecida como chave assimétrica.
Verificar Verifica uma assinatura digital que foi gerada pela operação de assinatura usando a chave pública da mesma chave assimétrica que foi usada para assinar os dados. Se quiser validar a assinatura digital fora do serviço, você poderá fazer isso usando a chave pública da chave assimétrica.

Ao trabalhar no Oracle Integration Cloud e você precisa criptografar o payload antes de enviar a solicitação para uma API Rest, você pode usar o OCI Vault. Se você estiver trabalhando com criptografia simétrica, poderá receber a chave privada AES, fazer upload dela no OCI Vault e usar as APIs do OCI Vault para criptografar os dados e enviar esses dados criptografados para a API Rest. Se você precisar de criptografia assimétrica, poderá receber a chave pública RSA, fazer upload dela no OCI Vault e usar as APIs do OCI Vault para criptografar os dados e enviar esses dados criptografados para a API Rest. Da mesma forma, se você quiser impor APIs Rest no Oracle Integration Cloud para ter payload criptografado, poderá criar chaves, compartilhar com seus clientes e usar APIs do OCI Vault para decriptografar os dados e verificar. Além disso, você pode combinar as duas chaves quando precisar usar criptografia assimétrica e simétrica.

O diagrama a seguir ilustra essa arquitetura de referência.



oci-vault-arquitetura-oracle.zip

A arquitetura tem os seguintes componentes:

  • Oracle Integration Cloud

    O Oracle Integration Cloud (OIC) fornece um conjunto abrangente de ferramentas e serviços para ajudar as organizações a integrar seus diversos aplicativos, serviços e origens de dados, tanto locais quanto na nuvem. O OIC oferece uma variedade de recursos, incluindo conectores predefinidos para integração com vários aplicativos populares, como Oracle Fusion, Salesforce, SAP, Workday e muito mais, além de conectores personalizados para integração com outros aplicativos e serviços. Ele também oferece uma interface visual intuitiva para criação, teste e implantação de integrações, facilitando a criação de workflows de integração complexos sem exigir habilidades de codificação.

  • Oracle Cloud Infrastructure Vault

    O OCI Vault é um serviço de gerenciamento de chaves seguro e escalável oferecido pelo OCI (Oracle Cloud Infrastructure). Ele fornece um local centralizado para gerenciar chaves criptográficas e segredos usados para proteger recursos e aplicativos do OCI. O OCI Vault oferece uma variedade de recursos, incluindo geração e armazenamento de chaves, distribuição segura de chaves, criptografia e decriptografia. Ele permite que os usuários gerenciem suas próprias chaves ou usem chaves gerenciadas pelo OCI. Os usuários também podem rotacionar suas chaves regularmente para garantir a segurança máxima.

    O OCI Vault também oferece um rico conjunto de APIs Rest para gerenciar vaults e chaves.

Considerações

Considere os seguintes pontos ao implementar essa arquitetura de referência.

  • Segurança

    Use políticas do Oracle Cloud Infrastructure Identity and Access Management (IAM) para controlar quem pode acessar seus recursos de nuvem e quais operações podem ser executadas. Designe acesso de privilégio mínimo para usuários e grupos do IAM a tipos de recursos.

  • Limites de serviço

    Considere os limites e as cotas dos serviços do OCI usados na topologia. Veja Explorar Mais.

Aquisições

Autores:

  • Harris Qureshi

Colaboradores:

  • John Sulyok