Compartilhar via


Implantar o contêiner do agente do conector de dados do Microsoft Sentinel para SAP com opções de especialista

Este artigo fornece procedimentos para implantar e configurar o contêiner do agente do conector de dados do Microsoft Sentinel para SAP com opções de configuração especializadas, personalizadas ou manuais. Para implantações típicas, é recomendável usar o portal.

O conteúdo deste artigo é destinado às suas equipes de SAP BASIS. Para obter mais informações, veja Implantar um agente de conector de dados SAP a partir da linha de comando.

Observação

Esse artigo é relevante apenas para o agente do conector de dados e não é relevante para a solução sem agente SAP (visualização limitada).

Pré-requisitos

Adicionar manualmente segredos do Azure Key Vault do agente do conector de dados SAP

Use o script a seguir para adicionar manualmente segredos do sistema SAP ao cofre de chaves. Substitua os espaços reservados por sua própria ID do sistema e as credenciais que você deseja adicionar:

#Add Abap username
az keyvault secret set \
  --name <SID>-ABAPUSER \
  --value "<abapuser>" \
  --description SECRET_ABAP_USER --vault-name $kvname

#Add Abap Username password
az keyvault secret set \
  --name <SID>-ABAPPASS \
  --value "<abapuserpass>" \
  --description SECRET_ABAP_PASSWORD --vault-name $kvname

#Add Java Username
az keyvault secret set \
  --name <SID>-JAVAOSUSER \
  --value "<javauser>" \
  --description SECRET_JAVAOS_USER --vault-name $kvname

#Add Java Username password
az keyvault secret set \
  --name <SID>-JAVAOSPASS \
  --value "<javauserpass>" \
  --description SECRET_JAVAOS_PASSWORD --vault-name $kvname

#Add abapos username
az keyvault secret set \
  --name <SID>-ABAPOSUSER \
  --value "<abaposuser>" \
  --description SECRET_ABAPOS_USER --vault-name $kvname

#Add abapos username password
az keyvault secret set \
  --name <SID>-ABAPOSPASS \
  --value "<abaposuserpass>" \
  --description SECRET_ABAPOS_PASSWORD --vault-name $kvname

#Add Azure Log ws ID
az keyvault secret set \
  --name <SID>-LOGWSID \
  --value "<logwsod>" \
  --description SECRET_AZURE_LOG_WS_ID --vault-name $kvname

#Add Azure Log ws public key
az keyvault secret set \
  --name <SID>-LOGWSPUBLICKEY \
  --value "<loswspubkey>" \
  --description SECRET_AZURE_LOG_WS_PUBLIC_KEY --vault-name $kvname

Para obter mais informações, consulte o Início Rápido: criar um cofre de chaves usando a CLI do Azure e a documentação da CLI do az keyvault secret.

Executar uma instalação especializada/personalizada

Este procedimento descreve como implantar o conector do Microsoft Sentinel para dados SAP por meio da CLI usando uma instalação especializada ou personalizada, como ao instalar o no local.

Pré-requisitos: o Azure Key Vault é o método recomendado para armazenar suas credenciais de autenticação e dados de configuração. É recomendável executar este procedimento somente depois de ter um cofre de chaves pronto com suas credenciais do SAP.

Para implantar o conector do Microsoft Sentinel para dados SAP:

  1. Faça o download do SDK SAP NW RFC mais recente do site da Plataforma de lançamento do SAP>SAP NW RFC SDK>SAP NW RFC SDK 7.50>nwrfc750X_X-xxxxxxx.zip e salve-o na computador do agente do conector de dados.

    Observação

    Você precisará das credenciais do usuário SAP para acessar o SDK e fazer o download do SDK que corresponde ao seu sistema operacional.

    Selecione a opção LINUX ON X86_64.

  2. No mesmo computador, crie uma nova pasta com um nome significativo e copie o arquivo zip do SDK para sua nova pasta.

  3. Clone o repositório do GitHub da solução do Microsoft Sentinel no computador local e copie o arquivo systemconfig.json dos aplicativos da Solução do Microsoft Sentinel para SAP para sua nova pasta.

    Por exemplo:

    mkdir /home/$(pwd)/sapcon/<sap-sid>/
    cd /home/$(pwd)/sapcon/<sap-sid>/
    wget  https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/template/systemconfig.json 
    cp <**nwrfc750X_X-xxxxxxx.zip**> /home/$(pwd)/sapcon/<sap-sid>/
    
  4. Edite o arquivo systemconfig.json conforme necessário, usando os comentários inseridos como um guia.

    Defina as seguintes configurações usando as instruções no arquivo systemconfig.json:

    • Os logs que você deseja ingerir no Microsoft Azure Sentinel usando as instruções no arquivo systemconfig.json.
    • Se os endereços de email do usuário devem ser incluídos nos logs de auditoria
    • Se as chamadas à API com falha devem ter nova tentativa
    • Se os logs de auditoria cexal devem ser incluídos
    • Se deve aguardar um intervalo de tempo entre extrações de dados, especialmente para extrações grandes

    Para obter mais informações, consulte Configurar manualmente o conector de dados do Microsoft Sentinel para SAP e Definir os logs SAP que são enviados para o Microsoft Sentinel.

    Para testar sua configuração, talvez você queira adicionar o usuário e a senha diretamente ao arquivo de configuraçãosystemconfig.json. Embora seja recomendável usar o Azure Key Vault para armazenar suas credenciais, você também pode usar um arquivo env.list, segredos do Docker, ou pode adicionar suas credenciais diretamente ao arquivo systemconfig.json.

    Para obter mais informações, consulte Configurações do conector de logs do SAL.

  5. Salve o arquivo systemconfig.json atualizado no diretório sapcon em seu computador.

  6. Se você optou por usar um arquivo env.list para suas credenciais, crie um arquivo env.list temporário com as credenciais necessárias. Depois que o contêiner do Docker estiver executando corretamente, exclua esse arquivo.

    Observação

    O script a seguir tem cada contêiner do Docker se conectando a um sistema ABAP específico. Modifique seu script conforme necessário para seu ambiente.

    Correr:

    ##############################################################
    # Include the following section if you're using user authentication
    ##############################################################
    # env.list template for Credentials
    SAPADMUSER=<SET_SAPCONTROL_USER>
    SAPADMPASSWORD=<SET_SAPCONTROL_PASS>
    LOGWSID=<SET MICROSOFT SENTINEL WORKSPACE ID>
    LOGWSPUBLICKEY=<SET MICROSOFT SENTINEL WORKSPACE KEY>
    ABAPUSER=SET_ABAP_USER>
    ABAPPASS=<SET_ABAP_PASS>
    JAVAUSER=<SET_JAVA_OS_USER>
    JAVAPASS=<SET_JAVA_OS_USER>
    ##############################################################
    # Include the following section if you are using Azure Keyvault
    ##############################################################
    # env.list template for AZ Cli when MI is not enabled
    AZURE_TENANT_ID=<your tenant id>
    AZURE_CLIENT_ID=<your client/app id>
    AZURE_CLIENT_SECRET=<your password/secret for the service principal>
    ##############################################################
    
  7. Faça download e execute a imagem do Docker predefinida com o conector de dados do SAP instalado. Correr:

    docker pull mcr.microsoft.com/azure-sentinel/solutions/sapcon:latest-preview
    docker run --env-file=<env.list_location> -d --restart unless-stopped -v /home/$(pwd)/sapcon/<sap-sid>/:/sapcon-app/sapcon/config/system --name sapcon-<sid> sapcon
    rm -f <env.list_location>
    
  8. Verifique se o contêiner do Docker está sendo executado corretamente. Correr:

    docker logs –f sapcon-[SID]
    
  9. Continue com a implantação dos aplicativos da Solução do Microsoft Sentinel para SAP.

    A implantação da solução permite que o conector de dados do SAP seja exibido no Microsoft Azure Sentinel e implanta a pasta de trabalho e as regras de análise do SAP. Quando terminar, adicione e personalize manualmente seus watchlists do SAP.

    Para obter mais informações, confira Implantar a aplicativos da Solução do Microsoft Sentinel para SAP a partir do hub de conteúdo.

Configurar manualmente o conector do Microsoft Sentinel para dados SAP

Quando implantado via CLI, o conector do Microsoft Sentinel para dados SAP é configurado no arquivo ssystemconfig.json, que você clonou para seu computador do conector de dados SAP como parte do procedimento de implantação. Use o conteúdo nesta seção para definir manualmente as configurações do conector de dados.

Para obter mais informações, consulte Referência de arquivo systemconfig.json ou Referência de arquivo systemconfig.ini para sistemas herdados.

Definir os logs SAP que são enviados para o Microsoft Azure Sentinel

O arquivo systemconfig.json padrão é configurado para abranger análises internas, as tabelas de dados mestre de autorização do usuário SAP, com usuários e informações de privilégios e a capacidade de controlar alterações e atividades no cenário SAP.

A configuração padrão fornece mais informações de registro em log para permitir investigações pós-violação e habilidades de busca estendidas. No entanto, talvez você queira personalizar sua configuração ao longo do tempo, especialmente porque os processos empresariais tendem a ser sazonais.

Use os seguintes conjuntos de código para configurar o arquivo systemconfig.json para definir os logs enviados ao Microsoft Sentinel.

Para obter mais informações, confira Referência de logs de solução das aplicações da Solução do Microsoft Sentinel para SAP (visualização pública).

Configurar um perfil padrão

O código a seguir configura uma configuração padrão:

"logs_activation_status": {
      "abapauditlog": "True",
      "abapjoblog": "True",
      "abapspoollog": "True",
      "abapspooloutputlog": "True",
      "abapchangedocslog": "True",
      "abapapplog": "True",
      "abapworkflowlog": "True",
      "abapcrlog": "True",
      "abaptabledatalog": "False",
      "abapfileslogs": "False",
      "syslog": "False",
      "icm": "False",
      "wp": "False",
      "gw": "False",
      "javafileslogs": "False"

Configurar um perfil focado em detecção

Use o código a seguir para configurar um perfil focado em detecção, que inclui os principais logs de segurança da paisagem do SAP necessários para que a maioria das regras de análise tenha um bom desempenho. As investigações pós-violação e as funcionalidades de busca são limitadas.

"logs_activation_status": {
      "abapauditlog": "True",
      "abapjoblog": "False",
      "abapspoollog": "False",
      "abapspooloutputlog": "False",
      "abapchangedocslog": "True",
      "abapapplog": "False",
      "abapworkflowlog": "False",
      "abapcrlog": "True",
      "abaptabledatalog": "False",
      "abapfileslogs": "False",
      "syslog": "False",
      "icm": "False",
      "wp": "False",
      "gw": "False",
      "javafileslogs": "False"
    },
....
  "abap_table_selector": {
      "agr_tcodes_full": "True",
      "usr01_full": "True",
      "usr02_full": "True",
      "usr02_incremental": "True",
      "agr_1251_full": "True",
      "agr_users_full": "True",
      "agr_users_incremental": "True",
      "agr_prof_full": "True",
      "ust04_full": "True",
      "usr21_full": "True",
      "adr6_full": "True",
      "adcp_full": "True",
      "usr05_full": "True",
      "usgrp_user_full": "True",
      "user_addr_full": "True",
      "devaccess_full": "True",
      "agr_define_full": "True",
      "agr_define_incremental": "True",
      "pahi_full": "True",
      "pahi_incremental": "True",
      "agr_agrs_full": "True",
      "usrstamp_full": "True",
      "usrstamp_incremental": "True",
      "agr_flags_full": "True",
      "agr_flags_incremental": "True",
      "sncsysacl_full": "False",
      "usracl_full": "False",

Use o código a seguir para configurar um perfil mínimo, que inclui o Log de Auditoria de Segurança do SAP, que é a fonte de dados mais importante que os aplicativos da Solução do Microsoft Sentinel para SAP usam para analisar atividades na paisagem do SAP. Habilitar esse log é o requisito mínimo para fornecer qualquer cobertura de segurança.

"logs_activation_status": {
      "abapauditlog": "True",
      "abapjoblog": "False",
      "abapspoollog": "False",
      "abapspooloutputlog": "False",
      "abapchangedocslog": "True",
      "abapapplog": "False",
      "abapworkflowlog": "False",
      "abapcrlog": "True",
      "abaptabledatalog": "False",
      "abapfileslogs": "False",
      "syslog": "False",
      "icm": "False",
      "wp": "False",
      "gw": "False",
      "javafileslogs": "False"
    },
....
  "abap_table_selector": {
      "agr_tcodes_full": "False",
      "usr01_full": "False",
      "usr02_full": "False",
      "usr02_incremental": "False",
      "agr_1251_full": "False",
      "agr_users_full": "False",
      "agr_users_incremental": "False",
      "agr_prof_full": "False",
      "ust04_full": "False",
      "usr21_full": "False",
      "adr6_full": "False",
      "adcp_full": "False",
      "usr05_full": "False",
      "usgrp_user_full": "False",
      "user_addr_full": "False",
      "devaccess_full": "False",
      "agr_define_full": "False",
      "agr_define_incremental": "False",
      "pahi_full": "False",
      "pahi_incremental": "False",
      "agr_agrs_full": "False",
      "usrstamp_full": "False",
      "usrstamp_incremental": "False",
      "agr_flags_full": "False",
      "agr_flags_incremental": "False",
      "sncsysacl_full": "False",
      "usracl_full": "False",

Configurações do conector de logs de SAL

Adicione o código a seguir ao arquivo systemconfig.json do conector do Microsoft Sentinel para dados SAP para definir outras configurações para logs do SAP ingeridos no Microsoft Sentinel.

Para obter mais informações, consulte Executar uma instalação especializada/personalizada do conector de dados SAP.

    "connector_configuration": {
      "extractuseremail": "True",
      "apiretry": "True",
      "auditlogforcexal": "False",
      "auditlogforcelegacyfiles": "False",
      "timechunk": "60"

Esta seção permite que você configure os seguintes parâmetros:

Nome do parâmetro Descrição
extractuseremail Determina se os endereços de email do usuário estão incluídos nos logs de auditoria.
apiretry Determina se as chamadas à API são repetidas como um mecanismo de failover.
auditlogforcexal Determina se o sistema força o uso de logs de auditoria para sistemas não SAL, como SAP BASIS versão 7.4.
auditlogforcelegacyfiles Determina se o sistema força o uso de logs de auditoria com recursos herdados do sistema, como o SAP BASIS versão 7.4 com níveis de patch inferiores.
timechunk Determina que o sistema aguarda um número específico de minutos como um intervalo entre extrações de dados. Use esse parâmetro se você tiver uma grande quantidade de dados esperada.

Por exemplo, durante o carregamento inicial de dados durante suas primeiras 24 horas, talvez você queira que a extração de dados seja executada somente a cada 30 minutos para dar tempo suficiente a cada extração de dados. Nesses casos, defina esse valor como 30.

Configurar uma instância de controle do SAP ABAP

Para ingerir todos os logs do ABAP no Microsoft Azure Sentinel, incluindo os logs baseados em serviço Web do SAP Control e RFC NW, configure os seguintes detalhes de SAP Control de ABAP:

Configuração Descrição
javaappserver Insira o host do servidor do SAP Control ABAP.
Por exemplo: contoso-erp.appserver.com
javainstance Insira o número da instância do SAP Control ABAP.
Por exemplo: 00
abaptz Insira o fuso horário configurado no seu servidor do SAP Control ABAP, no formato GMT.
Por exemplo: GMT+3
abapseverity Insira o nível de gravidade mais baixo (inclusivo) para o qual deseja ingerir logs ABAP no Microsoft Azure Sentinel. Os valores são:

- 0 = Todos os logs
- 1 = Aviso
- 2 = Erro

Configurar uma instância do Java SAP Control

Para ingerir logs baseados em serviço Web do SAP Control no Microsoft Azure Sentinel, configure os seguintes detalhes da instância do JAVA SAP Control:

Parâmetro Descrição
javaappserver Insira o host do servidor do SAP Control Java.
Por exemplo: contoso-java.server.com
javainstance Insira o número da instância do SAP Control ABAP.
Por exemplo: 10
javatz Insira o fuso horário configurado no seu servidor do SAP Control Java, no formato GMT.
Por exemplo: GMT+3
javaseverity Insira o nível de gravidade mais baixo (inclusivo) para o qual deseja ingerir logs do Serviço Web no Microsoft Azure Sentinel. Os valores são:

- 0 = Todos os logs
- 1 = Aviso
- 2 = Erro

Configurando a coleta de dados mestres do usuário

Para ingerir tabelas diretamente do sistema SAP com detalhes sobre seus usuários e autorizações de função, configure seu arquivo systemconfig.json com uma instrução True/False para cada tabela.

Por exemplo:

    "abap_table_selector": {
      "agr_tcodes_full": "True",
      "usr01_full": "True",
      "usr02_full": "True",
      "usr02_incremental": "True",
      "agr_1251_full": "True",
      "agr_users_full": "True",
      "agr_users_incremental": "True",
      "agr_prof_full": "True",
      "ust04_full": "True",
      "usr21_full": "True",
      "adr6_full": "True",
      "adcp_full": "True",
      "usr05_full": "True",
      "usgrp_user_full": "True",
      "user_addr_full": "True",
      "devaccess_full": "True",
      "agr_define_full": "True",
      "agr_define_incremental": "True",
      "pahi_full": "True",
      "pahi_incremental": "True",
      "agr_agrs_full": "True",
      "usrstamp_full": "True",
      "usrstamp_incremental": "True",
      "agr_flags_full": "True",
      "agr_flags_incremental": "True",
      "sncsysacl_full": "False",
      "usracl_full": "False",

Para obter mais informações, confira Referência de tabelas recuperadas diretamente de sistemas SAP.

Para saber mais, veja: