Saiba mais sobre a Segurança e o Monitoramento do Oracle IDCS

Você pode aproveitar o novo Serviço Logging Analytics com outros serviços do Oracle Cloud Infrastructure (OCI) para obter informações de Segurança e Governança de uma instância do Oracle Identity Cloud Service (IDCS). Este manual demonstra como você pode usar uma função sem servidor para automatizar o processo de coleta de logs de auditoria do IDCS e carregá-lo no Log Analytics para análise.

O Oracle Functions é uma plataforma Functions-as-a-Service sem servidor, altamente escalável e totalmente gerenciada, construída no Oracle Cloud Infrastructure e com a tecnologia do mecanismo Fn Project de código aberto. Os desenvolvedores podem usar o Oracle Functions para escrever e implantar código que ofereça valor ao negócio sem se preocupar com provisionamento ou gerenciamento da infraestrutura subjacente. O Oracle Functions é nativo de contêiner, com funções empacotadas como imagens de contêiner do Docker.

Arquitetura

Nesta arquitetura, a função chama a API do IDCS para coletar logs e depois chama a API do Log Analytics para carregá-la no Log Analytics. Ele usa o API Gateway e a Verificação de Integridade para programar a função para ser executada a cada cinco minutos. Ele armazena o status atual no bucket do serviço Object Storage. Este diagrama ilustra a topologia e o fluxo de dados que permitirão obter informações de segurança e governança de uma instância do Oracle IDCS.
Veja a seguir a descrição da ilustração secure-monitor-idcs-arch.png
Descrição da ilustração secure-monitor-idcs-arch.png

secure-monitor-idcs-arch-oracle.zip

  • Região

    Uma região do Oracle Cloud Infrastructure é uma área geográfica localizada que contém um ou mais data centers, denominados domínios de disponibilidade. As regiões são independentes de outras regiões, e grandes distâncias podem separá-las (em países ou mesmo continentes).

  • Compartimento

    Os compartimentos são partições lógicas entre regiões em uma tenancy do Oracle Cloud Infrastructure. Use compartimentos para organizar seus recursos no Oracle Cloud, controlar o acesso aos recursos e definir cotas de uso. Para controlar o acesso aos recursos em um determinado compartimento, você define políticas que especificam quem pode acessar os recursos e quais ações eles podem executar.

  • Rede virtual na nuvem (VCN) e sub-redes

    VCN é uma rede personalizável definida por software que você configura em uma região do Oracle Cloud Infrastructure. Assim como as redes tradicionais de data center, as VCNs oferecem total controle sobre seu ambiente de rede. Uma VCN pode ter vários blocos CIDR não sobrepostos que você pode alterar após criar a VCN. Você pode segmentar uma VCN em sub-redes, que podem ter escopo em uma região ou em um domínio de disponibilidade. Cada sub-rede consiste em uma faixa contígua de endereços que não se sobrepõem às outras sub-redes da VCN. Você pode alterar o tamanho de uma sub-rede após a criação. Uma sub-rede pode ser pública ou privada.

  • API Gateway

    O serviço API Gateway permite que você publique APIs com pontos finais privados acessíveis na sua rede, e que você pode expor à internet pública, se necessário. Os pontos finais suportam validação de API, transformação de solicitação e resposta, CORS, autenticação e autorização e limitação de solicitação.

  • Função

    O Oracle Functions é uma plataforma FaaS (Funções como Serviço) totalmente gerenciada, multitenant, altamente escalável e sob demanda. Ele é alimentado pelo mecanismo de código aberto do Fn Project. As funções permitem que você implante seu código, chamando-o diretamente ou acionando-o em resposta a eventos. O Oracle Functions usa contêineres Docker hospedados no Oracle Cloud Infrastructure Registry.

  • Object Storage

    O armazenamento de objetos fornece acesso rápido a grandes volumes de dados estruturados e não estruturados de qualquer tipo de conteúdo, incluindo backups de bancos de dados, dados analíticos e conteúdo avançado, como imagens e vídeos. Você pode armazenar de forma segura e depois recuperar dados diretamente da internet ou de dentro da plataforma da nuvem. Você pode escalar o armazenamento de forma integrada sem experimentar qualquer degradação no desempenho ou na confiabilidade do serviço. Use o armazenamento padrão para armazenamento "quente" que você precisa acessar de forma rápida, imediata e frequente. Use o armazenamento de arquivos compactados para armazenamento "frio" que você mantém por longos períodos de tempo e raramente acessa.

  • Logging Analytics

    O Logging Analytics é um serviço regional SaaS totalmente gerenciado disponível em mais de 27 regiões que fornece coleta, indexação, enriquecimento, consulta, visualização e alerta para logs de qualquer componente de TI em execução no local, OCI ou nuvem de 3 terceiros.

  • Vault

    O Vault é um serviço de gerenciamento de chaves usado para criptografar senhas e segredos do cliente

Antes de Começar

Para concluir com sucesso as etapas deste playbook, prepare o aplicativo do IDCS OAuth para chamadas de API e prepare o ambiente do OCI.

Revisar Recomendações de Implantação e Uso

Seus requisitos podem ser diferentes da arquitetura descrita aqui. Use essas recomendações como um ponto de partida.
  • Grupos de Logs

    Defina vários grupos de logs para fornecer permissões de acesso corretas a diferentes equipes e evitar o compartilhamento de dados confidenciais.

  • Gerenciamento de Custos

    O serviço Logging Analytics é cobrado no volume de dados no armazenamento ativo e de arquivamento. Para permitir a solução de problemas do dia a dia e receber os benefícios da detecção de anomalias, da detecção de padrões e de outros recursos de aprendizado de máquina, a Oracle recomenda que você use um período de armazenamento ativo de 90 dias e mova logs com mais de 90 dias para o armazenamento de arquivamento. Os logs do arquivamento armazenado podem ser rapidamente recuperados sob demanda.

Revisar Considerações sobre Implantação e Uso

Ao projetar uma pilha de aplicativos altamente disponível na nuvem, considere os seguintes fatores:

  • Desempenho

    O desempenho da consulta se baseia no intervalo de tempo e no número de operações, como filtros, agrupar por etc. Para obter melhor desempenho de consulta, a Oracle recomenda que você enriqueça logs com rótulos e campos específicos no momento da ingestão.

  • Segurança e RBAC.

    Personalize as definições de origem de log para filtrar quaisquer dados de identificação pessoal (PII) e habilite o enriquecimento por geolocalização. Disponibilidade: o Logging Analytics é um serviço SaaS altamente disponível e totalmente gerenciado. Implantar O aplicativo Oracle Cloud Infrastructure Logging Analytics está disponível como pilha no Oracle Cloud Marketplace

Preparar Aplicativo IDCS OAuth para Chamada de API

Para chamar a API do IDCS usando um ID/Secret do Cliente, você precisa criar um aplicativo personalizado no IDCS e gerar um ID/Secret do Cliente. Certifique-se de registrar o URL do IDCS, o ID do cliente e o segredo.

Neste procedimento, você criará um aplicativo cliente que usa um token para empregar APIs REST do IDCS. Isso elimina a necessidade de inserir seu nome de usuário e senha para autenticar a função que você criará posteriormente neste exercício.
  1. Na Console do IDCS, selecione Aplicativos, clique em Adicionar e selecione Aplicativo Confidencial.
  2. Dê um nome ao aplicativo e clique em Próximo.
    A janela Configuração é exibida.
  3. Verifique Tipos de Concessão Permitidos e Proprietário do Recurso e, em seguida, conceda ao cliente acesso ao Administrador do Identity Cloud Service adicionando a atribuição de Administrador do Domínio de Identidades ao aplicativo. Clique em Próximo.
  4. Marque Impor Concessão como Autorização e clique em Próximo e em Finalizar.
    Um pop-up mostrando o ID do cliente e o Segredo do Cliente é exibido.
  5. Copie o ID do Cliente e o Segredo do Cliente conforme necessário.

Preparar o Ambiente do OCI

Em seguida, prepare o ambiente do OCI garantindo as permissões apropriadas e tenha os recursos necessários para concluir as tarefas.

Verifique se você tem o seguinte:
  • Permissão para gerenciar os seguintes tipos de recursos em sua tenancy do Oracle Cloud Infrastructure:
    • VCNs
    • Gateways de Internet
    • Tabelas de roteamento
    • Listas de segurança
    • Sub-redes
    • Funções
    • Gateways de API
    • Health Checks
  • Cota suficiente para criar os seguintes recursos:
    • 1 VCN
    • 1 Sub-redes
    • 1 Gateway de Internet
    • 1 Regras de rota
    • 1 Função
    • 1 Grupo dinâmico
    • 1 Política
    • 1 API Gateway
    • 1 Verificação de integridade

Saiba Mais Sobre os Painéis de Controle Definidos pela Oracle

Os painéis de controle Logs de Auditoria do IDCS e do IDCS Admin Governance definidos pela Oracle são criados automaticamente no seu serviço Logging Analytics quando a pilha do Terraform é implantada. Esses painéis permitem exibir seus dados de análise em um único painel, que é útil para monitorar de perto as atividades do aplicativo em nuvem, detectar eventos anômalos e controlar as ações administrativas.

Compreender o Painel de Controle de Logs de Auditoria do IDCS

O painel de controle Logs de Auditoria do IDCS resume informações de auditoria, usando widgets, em um único painel com gráficos e visualizações, com base na sua seleção do intervalo de tempo. Isso fornece uma visão ampla das várias atividades de aplicativo e usuário durante o período selecionado.

O painel de controle Logs de Auditoria do IDCS resume os seguintes dados:
  • Um total de (para aplicação)

    O número de eventos de aplicativo e de usuários.

  • Eventos do aplicativo

    Um gráfico que descreve o registro periódico de eventos do aplicativo

  • Um total de (para usuário)

    O número de eventos de aplicativo e de usuários.

  • Eventos do usuário

    Um gráfico que descreve o registro periódico de eventos do usuário

  • Eventos por aplicativo por tipo

    Uma visualização de mapa em árvore de eventos agrupados por tipo de evento para cada aplicativo.

  • Eventos por usuário por tipo

    Uma visualização de mapa em árvore de eventos agrupados por tipo de evento para cada usuário

  • Repartição por aplicação

    Um gráfico de pizza mostrando a distribuição da contagem de eventos agrupados por aplicativos.

  • Repartição por tipo de evento (para aplicativo)

    Um gráfico de pizza agrupando a contagem de eventos por tipo de evento somente para os eventos do aplicativo.

  • Repartição por usuário

    Um gráfico de pizza mostrando a distribuição do número de eventos, agrupados por usuários.

  • Repartição por tipo de evento (para usuário)

    Um gráfico de pizza mostrando a contagem de eventos agrupados por tipo de evento somente para os eventos do usuário.

Compreender o Painel de Controle de Governança de Administração do IDCS

O painel de controle do IDCS Admin Governance apresenta a perspectiva paralela para ações administrativas bem-sucedidas e com falha por usuário, dentro do intervalo de tempo especificado. Este painel fornece uma visão geral de todas as atividades administrativas e informações sobre ações bem-sucedidas e com falha. Para fazer drill-down, você pode abrir as visualizações no Log Explorer e clicar nos eventos exatos para a causa-raiz.
O painel de controle Governança de Administração do IDCS fornece estes recursos:
  • Visualização de link dos eventos que envolvem ação administrativa bem-sucedida ou com falha do usuário agrupado por tipo de evento e usuário. Cada bolha no gráfico representa um grupo de eventos de um tipo específico por um usuário específico. Essa visualização é útil na identificação de atividades anômalas.
  • Visualização de mapa em árvore dos eventos que envolvem ação administrativa bem-sucedida ou com falha do usuário agrupado por tipo de evento e usuário. Para cada usuário, um conjunto de retângulos representando eventos de ação administrativa bem-sucedidos é exibido. A visualização é útil na visualização das atividades administrativas de cada usuário.
  • Uma view de histograma empilhado da contagem de eventos correspondentes distribuídos no período selecionado. As diferentes cores em cada barra representam os eventos para diferentes usuários.
  • Uma análise tabular de eventos em que as atribuições foram concedidas a usuários específicos para aplicativos específicos.