Recursos do Oracle Database Security

O Oracle Database oferece recursos de segurança importantes, incluindo métodos de autenticação e autorização suportados, criptografia de rede, análise de privilégios, Real Application Security, auditoria unificada, Oracle Virtual Private Database e muito mais, para atender às suas necessidades exclusivas.

Autenticação e autorização

Simplifique o gerenciamento de usuários configurando autenticação e autorização centralizadas de usuários. O Oracle Database pode ser perfeitamente integrado a serviços de identidade corporativos, incluindo Microsoft Active Directory, Microsoft Entra ID e Oracle Cloud Infrastructure Identity and Access Management, usando diversos métodos de autenticação. A autenticação multifator pode ser configurada usando serviços de identidade externos ou a API RADIUS.

Ao adotar uma estratégia robusta de autenticação e autorização, é possível impedir que contas de usuários não autorizadas do banco de dados permaneçam ativas após a saída de funcionários da organização, reduzindo o risco de acesso não autorizado a dados confidenciais.

Tabelas Blockchain

As tabelas blockchain no Oracle Database ajudam a garantir a integridade dos dados, criando registros criptograficamente encadeados, somente para inserção, que não podem ser alterados ou excluídos, fornecendo uma trilha de auditoria à prova de adulteração e proteção robusta contra alterações não autorizadas, mesmo aquelas que contornam o banco de dados.

Ao utilizar a tecnologia blockchain, você pode criar um registro imutável de transações que não pode ser alterado ou excluído. Isso fornece uma solução robusta quando a integridade dos dados, a auditabilidade e a proteção contra adulteração dos registros são essenciais, como em auditorias financeiras, rastreabilidade da cadeia de suprimentos e sistemas de votação seguros.

Controle de acesso baseado em código

Limite o acesso a dados a lógicas de negócios PL/SQL específicas com o controle de acesso baseado em código (CBAC). Ao anexar funções de banco de dados diretamente a unidades de programa PL/SQL, como funções, procedimentos e pacotes, você pode ajudar a garantir que essas funções sejam habilitadas apenas enquanto o código específico estiver em execução. A unidade de programa é executada com os privilégios necessários, independentemente dos privilégios do usuário que está chamando, e sem expor esses privilégios ou objetos subjacentes diretamente ao usuário. Ao implementar o CBAC, você pode aplicar o princípio do privilégio mínimo, concedendo as permissões necessárias apenas a lógicas de negócios específicas, em vez de usuários ou esquemas individuais.

DBMS_CRYPTO

O pacote PL/SQL DBMS_CRYPTO é usado para operações criptográficas. Ele fornece funções para criptografia, descriptografia e hashing e pode ser integrado ao Oracle Key Vault para gerenciamento de chaves. O DBMS_CRYPTO é particularmente útil quando você precisa de maior controle sobre operações criptográficas no nível de coluna, aplicação ou elemento de dados individual. Isso difere da criptografia transparente de dados, pois eles permanecem criptografados até que o pacote DBMS_CRYPTO seja chamado para descriptografá-los, protegendo-os de usuários com privilégios excessivos e administradores mal-intencionados.

DbNest

O DbNest permite resolver os desafios de segurança e isolamento em ambientes multitenant do Oracle Database, utilizando recursos do kernel Linux para criar ambientes de execução hierárquicos e em contêineres para bancos de dados de contêiner multitenant (CDBs) e bancos de dados conectáveis (PDBs), ajudando a garantir que os recursos de cada tenant sejam isolados dos demais.

Ao implementar o DbNest, você pode melhorar a segurança e o isolamento do ambiente de banco de dados multitenant e reduzir o risco de movimentação lateral e ataques de escalonamento de privilégios.

Função de desenvolvedor

Conceda à equipe de desenvolvimento o nível de acesso adequado com a função DB_DEVELOPER_ROLE. Essa função fornece um conjunto equilibrado de privilégios que permite aos desenvolvedores criar, modificar e implementar objetos de banco de dados, limitando o possível impacto nas operações do banco de dados.

Ao adotar essa função, você pode reduzir o risco de desenvolvedores com privilégios excessivos fazerem alterações que comprometam a segurança ou a integridade do seu banco de dados, ajudando a garantir que as equipes de desenvolvimento tenham acesso suficiente para criar e testar aplicações sem comprometer a segurança geral do sistema.

Auditoria refinada

As organizações precisam de insights precisos sobre o acesso a dados confidenciais para atender às demandas de segurança e conformidade. A auditoria granular (FGA) permite auditorias direcionadas e baseadas em condições nos níveis de linha e coluna do banco de dados e permite especificar handlers personalizados que podem acionar um alerta para atividades suspeitas. Isso proporciona uma auditoria focada e de alto valor que ajuda a detectar atividades não autorizadas em dados confidenciais. A FGA melhora a visibilidade da segurança, minimizando o impacto no desempenho e a sobrecarga da auditoria. Os recursos exclusivos da FGA — como a auditoria baseada em valor (por exemplo, auditar apenas quando alguém seleciona um salário de funcionário acima de um determinado limite) e handlers personalizados — fortalecem a segurança do Oracle Database e ajudam os clientes a atender aos requisitos avançados de auditoria.

Substituição gradual de senhas

Gerenciar senhas em várias aplicações e bancos de dados é complexo e frequentemente leva a períodos de inatividade, mesmo com planejamento e sincronização meticulosos.

A substituição gradual de senhas da Oracle permite que os administradores alterem as senhas sem interrupção do serviço. Tanto as senhas antigas quanto as novas funcionam durante o período de substituição, permitindo que as equipes de aplicações atualizem as credenciais sem períodos de inatividade. Isso ajuda a garantir o acesso contínuo e auxilia as organizações a atender aos requisitos de conformidade para a substituição regular de senhas, simplificando o gerenciamento e reduzindo interrupções.

Tabelas imutáveis

Proteja as tabelas do Oracle Database contra ameaças internas e corrupção acidental de dados com tabelas imutáveis. Essas tabelas somente para anexação impedem modificações de dados não autorizadas por pessoas internas e modificações acidentais resultantes de erros humanos, ajudando a garantir que seus dados permaneçam precisos e atualizados, mantendo a integridade e segurança. As tabelas imutáveis são úteis para atender aos requisitos em que os dados não podem ser alterados após serem inseridos.

Perfis de bloqueio

Implemente controles de segurança refinados para cada PDB com perfis de bloqueio, permitindo que os administradores restrinjam operações ou recursos específicos. Por exemplo, um perfil de bloqueio pode impedir que usuários do PDB executem determinadas instruções SQL ou impeçam a execução de procedimentos que acessam a rede.

ACLs de rede

As listas de controle de acesso à rede (ACLs) controlam o acesso de saída à rede a partir do banco de dados por meio de pacotes de utilitários PL/SQL, como UTL_TCP, UTL_HTTP, UTL_SMTP e UTL_INADDR. Defina regras refinadas com base em nomes de host, portas e privilégios para controlar o acesso do usuário e impedir conexões não autorizadas. Isso fornece uma camada adicional de proteção contra exfiltração de dados.

Criptografia de rede

A criptografia de conexões de banco de dados entre clientes e servidores é uma prática recomendada de segurança que ajuda a garantir uma comunicação segura.

O Oracle Database oferece dois métodos para proteger dados em trânsito: TLS (Transport Layer Security) e criptografia de rede nativa. O TLS é um protocolo padrão da indústria que oferece criptografia robusta, autenticação e não-repúdio. Ele requer certificados de servidor e configuração tanto do lado do cliente quanto do servidor, tornando-o ideal para ambientes com requisitos rigorosos de conformidade ou segurança. A criptografia de rede nativa, por outro lado, é mais simples de implementar, pois requer apenas um parâmetro do lado do servidor e funciona de forma transparente para a maioria das aplicações. Ela negocia automaticamente o algoritmo compatível mais forte, sem a necessidade de certificados ou alterações do lado do cliente.

Oracle Wallet

Uma carteira (ou keystore) é um contêiner criptografado e protegido por senha, usado para armazenar com segurança credenciais de autenticação e assinatura, como chaves privadas, certificados e credenciais de banco de dados. Em ambientes doOracle Database, as carteiras permitem a comunicação segura na rede, oferecendo suporte a TLS para clientes e servidores, armazenando chaves mestras de criptografia de dados transparente (TDE) e facilitando a integração com serviços externos, como o Microsoft Active Directory. As carteiras também fornecem um armazenamento externo seguro de senhas, permitindo que as aplicações se conectem ao banco de dados sem incorporar credenciais no código. Embora as carteiras possam armazenar chaves mestras de TDE, a Oracle recomenda gerenciá-las com o Oracle Key Vault para maior segurança e gerenciamento centralizado de chaves.

Análise de privilégios

Aplicações e usuários frequentemente recebem privilégios excessivos, especialmente em ambientes complexos ou legados. Isso torna mais difícil para os administradores revogarem o acesso com segurança, sem risco de interrupções. A análise de privilégios captura dinamicamente quais privilégios e funções são usados em tempo de execução. Isso permite que os administradores revoguem privilégios desnecessários com segurança e apliquem um modelo de privilégios mínimos, reduzindo a superfície de ataque.

Usuários somente leitura

Com usuários somente leitura, é possível desabilitar ou reabilitar os recursos de gravação de um usuário ou sessão sem revogar ou conceder privilégios novamente. Usuários somente leitura permitem controlar temporariamente os privilégios de usuário ou sessão para testes, administração ou desenvolvimento de aplicações.

Real Application Security

O Real Application Security atende à demanda por controle de acesso granular e sensível ao contexto em aplicações corporativas modernas e baseadas em IA, onde os modelos de segurança tradicionais são insuficientes. O Real Application Security fornece uma estrutura declarativa, aplicada a bancos de dados, que combina propagação segura de identidade com controle de acesso em nível de linha e coluna. Com o controle de acesso baseado em atributos, o Real Application Security avalia os atributos do usuário, como função, departamento ou localização geográfica, no runtime para determinar os direitos de acesso. Por exemplo, enfermeiros podem visualizar apenas os prontuários de pacientes atribuídos às suas unidades de atendimento, enquanto os médicos podem acessar informações adicionais de diagnósticos, mas campos sensíveis, como histórico de saúde mental ou dados de saúde reprodutiva, permanecem ocultos, a menos que explicitamente permitido por sua função. Ao incorporar a lógica de controle de acesso diretamente no banco de dados, o Real Application Security elimina a dependência do código da aplicação, simplifica o desenvolvimento e ajuda as organizações a atender aos rigorosos requisitos de privacidade, segurança e conformidade em escala.

Privilégios no nível de esquema

Normalmente, os privilégios no Oracle Database eram concedidos no nível do objeto (por exemplo, SELECT ON hr.employees) ou em um nível mais amplo, com privilégios de sistema (por exemplo, SELECT ANY TABLE). Se um usuário precisasse acessar todas as tabelas ou todos os procedimentos em um esquema, o administrador de banco de dados precisava conceder acesso explicitamente a cada objeto individualmente, ou usar privilégios de sistema excessivamente amplos, como SELECT ANY TABLE, o que gerava riscos de segurança.

O recurso de privilégios em nível de esquema melhora a segurança, simplificando a autorização para objetos de banco de dados, especialmente em esquemas que adicionam novos objetos com frequência.

Em vez de conceder privilégios de sistema amplos que se aplicam a todo o banco de dados, os administradores de banco de dados agora podem conceder privilégios em nível de esquema. O privilégio de sistema no nível de esquema se aplica a objetos atuais e futuros. Os privilégios no nível de esquema são úteis para aplicações que evoluem com frequência e precisam adicionar novos objetos sem conceder privilégios excessivos aos usuários.

Funções de aplicações seguras

Aplicações modernas exigem segurança com reconhecimento de contexto para proteger dados confidenciais e atender aos requisitos de conformidade. As funções de aplicação seguras da Oracle impedem o uso não autorizado de privilégios, permitindo a ativação de funções apenas sob condições controladas e definidas pelo banco de dados. Ao contrário das funções tradicionais, elas não podem ser usadas indevidamente por meio de login direto ou ferramentas externas. Somente um pacote ou procedimento PL/SQL, idealmente com lógica vinculada ao contexto da aplicação, pode habilitar uma função de aplicação segura. As funções de aplicações seguras fornecem a implementação mais rigorosa das políticas de acesso, reduzem a superfície de ataque e ajudam a manter a segurança consistente, tudo isso sem exigir alterações na lógica da aplicação.

Transparent Sensitive Data Protection

A Transparent Sensitive Data Protection permite que os usuários identifiquem e classifiquem rapidamente dados sensíveis em tabelas de banco de dados e, em seguida, criem uma política para protegê-los. A política é aplicada no nível da coluna, direciona tipos de dados específicos e utiliza as configurações do Oracle Data Redaction ou do Oracle Virtual Private Database para proteger informações sensíveis, como números de cartão de crédito ou da previdência social. Esse recurso permite que os usuários criem políticas uniformes para vários bancos de dados Oracle, que podem ser modificadas de acordo com as normas de conformidade. As políticas de Transparent Sensitive Data Protection oferecem fácil aplicação em grandes organizações, auditoria simplificada e aplicação consistente de políticas, especialmente em ambientes governamentais com restrições de segurança semelhantes.

Auditoria unificada

Os recursos abrangentes de auditoria do Oracle Database rastreiam o uso de privilégios, as atividades de usuários com privilégios elevados, o acesso a dados confidenciais, as ações realizadas em objetos do banco de dados e as modificações feitas nas configurações do banco de dados. A auditoria unificada oferece recursos de auditoria condicional e no nível de coluna para auditar a atividade em dados confidenciais sob determinadas condições. Os registros de auditoria são armazenados em um sistema que não pode ser violado.

Banco de dados privado virtual

As organizações muitas vezes enfrentam dificuldades para garantir o acesso granular aos dados, especialmente quando diferentes usuários precisam de visualizações distintas da mesma tabela. Os métodos tradicionais dependem de lógica complexa de aplicações ou visualizações estáticas, que são difíceis de gerenciar, auditar e proteger.

O Oracle Virtual Private Database resolve esse problema aplicando a segurança no nível de linha e coluna diretamente no banco de dados. O Virtual Private Database anexa dinamicamente predicados de filtragem às consultas SQL, com base na identidade do usuário ou no contexto da sessão. Isso ajuda a garantir que os usuários vejam apenas os dados aos quais têm autorização para acessar, independentemente de como se conectam. As políticas de segurança são centralizadas, transparentes para as aplicações e se adaptam às condições de tempo de execução, ajudando a garantir uma implementação consistente. O Virtual Private Database protege contra vazamento de dados, oferece suporte à conformidade regulatória e simplifica o desenvolvimento de aplicações. É uma solução escalável e sensível ao contexto para o controle de acesso a dados. Com o Virtual Private Database, a segurança é aplicada onde os dados residem.