Observação:

Consolide Logs entre Tenancies para Integração SIEM Usando Hubs de Conector entre Tenancies e OCI Stream

Introdução

O Oracle Cloud Infrastructure (OCI) é um Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) e Software-as-a-Service (SaaS) confiável para empresas de grande escala. Ele oferece uma ampla variedade de serviços gerenciados que abrangem hospedagem, armazenamento, rede, bancos de dados e muito mais.

A apresentação proativa de logs de eventos relacionados à segurança para triagem para os recursos apropriados é crucial para detectar e prevenir incidentes de segurança cibernética. Muitas organizações usam plataformas SIEM (Security Information and Event Management) para correlacionar e analisar logs e alertas de ativos relevantes. A configuração adequada da captura e retenção de logs de chave por uma duração apropriada, juntamente com monitoramento e alerta quase em tempo real, permite que as equipes de Operações de Segurança identifiquem problemas, concentrem-se em informações críticas com base no ajuste do sistema e tomem as medidas apropriadas.

Um padrão de melhores práticas de ingestão de logs do OCI é enviar logs para o fluxo do OCI, que é compatível com Apache kafka, facilitando a plataforma SIEM de terceiros para consumir os logs como consumidor do Kafka - reduzindo o atraso, fornecendo resiliência e retenção no caso de haver um problema temporário ao consumir dados no SIEM.

Diagrama de Arquitetura

Ao gerenciar várias tenancies, em vez de integrar cada região de todas as tenancies à plataforma SIEM individualmente, você pode consolidar logs de várias tenancies de origem (SourceTenant(s)) em uma região específica em um único fluxo do OCI de tenancy (TargetTenant), criando hubs de conector entre tenancies. A plataforma SIEM pode ingerir logs de todas as tenancies nessa região por meio do stream TargetTenant.

Observação: O serviço OCI Connector Hub não suporta hub de conector entre regiões a partir de agora.

A representação de alto nível da arquitetura da solução é mostrada na imagem a seguir.

Diagrama de Arquitetura de Solução

Instruções Endorse, Admit e Define

Para acessar e compartilhar recursos, os administradores de tenancies (SourceTenant(s) e TargetTenant) precisam criar instruções de política intertenancy especiais que declarem explicitamente os recursos que podem ser acessados e compartilhados. Essas instruções especiais usam os verbos Endorse, Admit e Define.

Uma visão geral dos verbos especiais usados em instruções intertenancy:

As instruções Endossar e Internar funcionam juntas. Sem uma instrução correspondente que especifique o acesso, uma determinada instrução Endossar ou Admitir não concede acesso. As duas tenancies devem concordar com o acesso.

Observação:

Objetivos

Pré-requisitos

Tarefa 1: Criar um Stream em TargetTenant

O serviço OCI Streaming é uma plataforma de streaming de eventos em tempo real, sem servidor e compatível com Apache Kafka para desenvolvedores e cientistas de dados. Ele fornece uma solução totalmente gerenciada, escalável e durável para ingestão e consumo de streams de dados de alto volume em tempo real, como logs. Podemos usar o OCI Streaming para qualquer caso de uso em que os dados sejam produzidos e processados de maneira contínua e sequencial em um modelo de mensagens de publicação-assinatura.

  1. Vá para a Console do OCI, navegue até Analytics & AI, Messaging e Streaming.

  2. Clique em Criar Stream para criar o stream.

  3. Especifique as seguintes informações e clique em Criar.

    • Nome: Digite o nome do fluxo. Para este tutorial, estamos usando TargetTenant-Stream.
    • Pool de Streams: Selecione o pool de streams existente ou crie um novo com ponto final público.
    • Retenção (em horas): Informe o número de horas para reter as mensagens neste fluxo.
    • Número de Partições: Informe o número de partições para o stream.
    • Taxa de Gravação Total e Taxa de Leitura Total: Informe com base na quantidade de dados que você precisa processar.

    Você pode começar com valores padrão para teste. Para obter mais informações, consulte Particionando um Stream.

Tarefa 2: Escrever políticas em SourceTenant(s)

Endosse qualquer hub de conector no compartimento especificado de SourceTenant(s) para acessar qualquer stream no TargetTenant.

Formato do Comando:

Define tenancy TargetTenant as <TargetTenant_OCID>

Endorse any-user to use stream-push in tenancy TargetTenant
    where all 
    { 
        request.principal.type='serviceconnector',
        request.principal.compartment.id= <connectorHub-Compartment_OCID> 
    }

Exemplo de comando:

Define tenancy TargetTenant as ocid1.tenancy.oc1..aaaaaaaanneylhk3ibxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Endorse any-user to use stream-push in tenancy TargetTenant where all { request.principal.type='serviceconnector', request.principal.compartment.id = 'ocid1.compartment.oc1..aaaaaaaau7xlnyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' }

Tarefa 3: Escrever políticas em TargetTenant

Admita o hub do conector de SourceTenant(s) para acessar o stream no TargetTenant.

Formato do Comando:

Define tenancy SourceTenantA as <SourceTenant-A_OCID>

Admit any-user of tenancy SourceTenantA to use stream-push in tenancy
   Where all
   {
   
   request.principal.type='serviceconnector'
   
   }

Exemplo de comando:

Define tenancy SourceTenantA as ocid1.tenancy.oc1..aaaaaaaakxcj24xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Admit any-user of tenancy SourceTenantA to use stream-push in tenancy Where all { request.principal.type = 'serviceconnector' }

Tarefa 4: Criar o OCI Connector Hub usando a CLI em SourceTenant(s)

Depois que as políticas necessárias forem criadas em SourceTenant(s) e TargetTenant, crie um Hub Conector do OCI usando a CLI em SourceTenant(s). O comando da CLI de exemplo a seguir especifica o OCI Logging como origem e o OCI Streaming como destino para criar o hub do conector entre tenancies.

Hub de conector entre tenancies para enviar logs do OCI Audit de SourceTenant(s) para o fluxo TargetTenant.

Formato do Comando:

oci sch service-connector create

--display-name <XTenancyConnectorHub-name>

--compartment-id <ConnectorHub-Compartment_OCID>

--source '{ "kind": "logging", "logSources":

[ { "compartmentId": "<SourceTenantA_OCID>",
"logGroupId": "_Audit_Include_Subcompartment" } ] }'

--target '{ "kind": "streaming", "streamId": "<TargetTenant-Stream_OCID>" }'

Exemplo de comando:

oci sch service-connector create --display-name XTenancyConnectorHub --compartment-id ocid1.compartment.oc1..aaaaaaaau7xlnyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx --source '{ "kind": "logging", "logSources": [ { "compartmentId": "ocid1.tenancy.oc1..aaaaaaaakxcj24xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","logGroupId": "_Audit_Include_Subcompartment" } ] }' --target '{ "kind": "streaming", "streamId": "ocid1.stream.oc1.iad.amaaaaaas4n35vixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" }'

Hub do conector entre tenancies para enviar logs personalizados/de serviço do fluxo SourceTenant(S) para o fluxo TargetTenant. Crie um grupo de logs e ative os logs necessários antes de executar o comando a seguir.

Formato do Comando:

oci sch service-connector create

--display-name <XTenancyConnectorHub-Name>

--compartment-id <ConnectorHub_Compartment_OCID>

--source '{ "kind": "logging", "logSources":

[ { "compartmentId": "<SourceTenantA-LogGroup-Compartment_OCID>",
"logGroupId": "<SourceTenantA-LogGroup_OCID>" } ] }'

--target '{ "kind": "streaming", "streamId": "<TargetTenant-Stream_OCID>" }'

Observação: As instruções de política na Tarefa 2, na Tarefa 3 e no comando da CLI na Tarefa 4 são formatadas para facilitar a leitura. Antes de usar cópias dessas instruções, remova novas linhas, tabulações e espaços.

Próximas Etapas

Este tutorial demonstrou como consolidar logs de várias tenancies usando os hubs de conector entre tenancies e o OCI stream. As plataformas SIEM de terceiros devem ser configuradas para consumir esses logs como consumidores do Kafka. É essencial configurar painéis em plataformas SIEM para capturar métricas críticas e configurar alertas para acionar quando limites predefinidos forem excedidos. Além disso, a definição de consultas específicas é crucial para detectar atividades maliciosas e identificar padrões em suas tenancies do OCI. Essas ações melhorarão sua postura de segurança e permitirão o monitoramento proativo do seu ambiente de nuvem.

Confirmações

Mais Recursos de Aprendizagem

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal Oracle Learning YouTube. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.

Para obter a documentação do produto, visite o Oracle Help Center.