Udostępnij za pośrednictwem


Wdrażanie rozwiązania Microsoft Sentinel dla oprogramowania SAP BTP

W tym artykule opisano sposób wdrażania rozwiązania Microsoft Sentinel dla systemu SAP Business Technology Platform (BTP). Rozwiązanie Microsoft Sentinel dla oprogramowania SAP BTP monitoruje i chroni system SAP BTP. Zbiera dzienniki inspekcji i dzienniki aktywności z infrastruktury BTP i aplikacji opartych na protokole BTP, a następnie wykrywa zagrożenia, podejrzane działania, bezprawne działania i inne. Przeczytaj więcej na temat rozwiązania.

Wymagania wstępne

Przed rozpoczęciem sprawdź, czy:

  • Rozwiązanie Microsoft Sentinel jest włączone.
  • Masz zdefiniowany obszar roboczy usługi Microsoft Sentinel i masz uprawnienia do odczytu i zapisu w obszarze roboczym.
  • Twoja organizacja używa protokołu SAP BTP (w środowisku Cloud Foundry), aby usprawnić interakcje z aplikacjami SAP i innymi aplikacjami biznesowymi.
  • Masz konto SAP BTP (które obsługuje konta BTP w środowisku usługi Cloud Foundry). Możesz również użyć konta próbnego SAP BTP.
  • Masz usługę zarządzania dziennikami audytu SAP BTP i klucz usługi (zobacz Konfigurowanie konta i rozwiązania BTP).
  • Masz rolę współautora Microsoft Sentinel w docelowym obszarze roboczym Microsoft Sentinel.

Konfigurowanie konta I rozwiązania BTP

Aby skonfigurować konto BTP oraz powiązane rozwiązanie:

  1. Po zalogowaniu się do konta BTP (zobacz wymagania wstępne) wykonaj kroki pobierania dziennika inspekcji w systemie SAP BTP.

  2. W kokpicie SAP BTP wybierz usługę zarządzania dziennikami inspekcji.

    Zrzut ekranu przedstawiający wybieranie usługi zarządzania dziennikami inspekcji BTP.

  3. Utwórz wystąpienie usługi zarządzania dziennikami inspekcji w subkoncie BTP.

    Zrzut ekranu przedstawiający tworzenie instancji subkonta BTP.

  4. Utwórz klucz usługi i zapisz wartości dla url, uaa.clientid, uaa.clientsecreti uaa.url. Te wartości są wymagane do wdrożenia łącznika danych.

    Oto przykłady tych wartości pól:

    • adres URL: https://auditlog-management.cfapps.us10.hana.ondemand.com
    • uaa.clientid: 00001111-aaaa-2222-bbbb-3333cccc4444|auditlog-management!b1237
    • uaa.clientsecret: aaaaaaaa-0b0b-1c1c-2d2d-333333333333
    • uaa.url: https://trial.authentication.us10.hana.ondemand.com
  5. Zaloguj się w witrynie Azure Portal.

  6. Przejdź do usługi Microsoft Sentinel.

  7. Wybierz Centrum zawartości, a następnie w pasku wyszukiwania wyszukaj BTP.

  8. Wybierz pozycję SAP BTP.

  9. Wybierz Zainstaluj.

    Aby uzyskać więcej informacji na temat zarządzania składnikami rozwiązania, zobacz Odnajdywanie i wdrażanie gotowej zawartości.

  10. Wybierz pozycję Utwórz.

    Zrzut ekranu przedstawiający sposób tworzenia rozwiązania Microsoft Sentinel dla SAP BTP.

  11. Wybierz grupę zasobów i obszar roboczy usługi Microsoft Sentinel, w którym chcesz wdrożyć rozwiązanie.

  12. Wybierz przycisk Dalej , dopóki nie przejdziesz weryfikacji, a następnie wybierz pozycję Utwórz.

  13. Po zakończeniu wdrażania rozwiązania wróć do obszaru roboczego usługi Microsoft Sentinel i wybierz pozycję Łączniki danych.

  14. Na pasku wyszukiwania wprowadź BTP, a następnie wybierz pozycję SAP BTP.

  15. Wybierz opcję Otwórz stronę łącznika.

  16. Na stronie łącznika upewnij się, że zostały spełnione wymagane wymagania wstępne wymienione i wykonaj kroki konfiguracji. Gdy wszystko będzie gotowe, wybierz pozycję Dodaj konto.

  17. Określ parametry zdefiniowane wcześniej podczas konfiguracji. Określona nazwa konta podrzędnego jest wyświetlana jako kolumna tabeli SAPBTPAuditLog_CL i może być używana do filtrowania logów, gdy masz wiele subkont.

    Uwaga

    Pobieranie audytów dla konta globalnego nie powoduje automatycznego pobierania audytów dla kont podrzędnych. Wykonaj kroki konfiguracji łącznika dla każdego z kont podrzędnych, które chcesz monitorować, a także wykonaj następujące kroki dla konta globalnego. Przejrzyj te zagadnienia dotyczące konfiguracji inspekcji kont.

  18. Upewnij się, że dzienniki BTP przepływają do obszaru roboczego usługi Microsoft Sentinel:

    1. Zaloguj się do konta podrzędnego BTP i uruchom kilka działań, które generują dzienniki, takie jak logowania, dodawanie użytkowników, zmienianie uprawnień i zmienianie ustawień.
    2. Poczekaj 20 do 30 minut, aby dzienniki zaczęły napływać.
    3. Na stronie łącznika SAP BTP upewnij się, że usługa Microsoft Sentinel odbiera dane BTP lub wysyła bezpośrednio zapytanie do tabeli SAPBTPAuditLog_CL .
  19. Włącz skoroszyt i reguły analizy udostępniane w ramach rozwiązania, postępując zgodnie z tymi wytycznymi.

Rozważ konfiguracje inspekcji konta

Ostatnim krokiem procesu wdrażania jest rozważenie konfiguracji inspekcji konta globalnego i konta podrzędnego.

Konfiguracja inspekcji konta globalnego

Po włączeniu opcji pobierania dzienników inspekcji w konsoli BTP dla konta globalnego: jeśli subkonto, dla którego chcesz przyznać uprawnienia usługi zarządzania dziennikami inspekcji, znajduje się w katalogu głównym, musisz najpierw przyznać usługę na poziomie katalogu głównego. Tylko wtedy można uprawniać usługę na poziomie konta podrzędnego.

Konfiguracja inspekcji konta podrzędnego

Aby włączyć inspekcję dla konta podrzędnego, wykonaj kroki opisane w dokumentacji API pobierania inspekcji subkont SAP.

W dokumentacji interfejsu API opisano sposób włączania pobierania dziennika inspekcji przy użyciu interfejsu wiersza polecenia usługi Cloud Foundry.

Dzienniki można również pobrać za pośrednictwem interfejsu użytkownika:

  1. W koncie podrzędnym w SAP Service Marketplace utwórz wystąpienie usługi Audit Log Management Service.
  2. W nowym wystąpieniu utwórz klucz usługi.
  3. Wyświetl klucz usługi i pobierz wymagane parametry z kroku 4 instrukcji konfiguracji w interfejsie użytkownika łącznika danych (url, uaa.url, uaa.clientid i uaa.clientsecret).

Zmienianie tajemnicy klienta BTP

Zalecamy okresową zmianę tajemnic klientów subkonta BTP. Aby uzyskać zautomatyzowane podejście oparte na platformie, zobacz nasze automatyczne odnawianie certyfikatu magazynu zaufania SAP BTP za pomocą usługi Azure Key Vault lub jak przestać myśleć o datach wygaśnięcia raz i na wszystkie (blog SAP).

Poniższy przykładowy skrypt demonstruje proces aktualizacji istniejącego łącznika danych za pomocą nowej tajemnicy pobranej z usługi Azure Key Vault.

Przed rozpoczęciem zbierz potrzebne wartości parametrów skryptów, w tym:

  • Identyfikator subskrypcji, grupa zasobów i nazwa obszaru roboczego dla obszaru roboczego usługi Microsoft Sentinel.
  • Skrytka kluczy i nazwa tajemnicy skrytki kluczy.
  • Nazwa łącznika danych, który chcesz zaktualizować przy użyciu nowego sekretu. Aby zidentyfikować nazwę łącznika danych, otwórz łącznik danych SAP BPT na stronie Łączniki danych usługi Microsoft Sentinel. Nazwa łącznika danych ma następującą składnię: BTP_{nazwa łącznika}
param(
    [Parameter(Mandatory = $true)] [string]$subscriptionId,
    [Parameter(Mandatory = $true)] [string]$workspaceName,
    [Parameter(Mandatory = $true)] [string]$resourceGroupName,
    [Parameter(Mandatory = $true)] [string]$connectorName,
    [Parameter(Mandatory = $true)] [string]$clientId,
    [Parameter(Mandatory = $true)] [string]$keyVaultName,
    [Parameter(Mandatory = $true)] [string]$secretName
)

# Import the required modules
Import-Module Az.Accounts
Import-Module Az.KeyVault

try {
    # Login to Azure
    Login-AzAccount

    # Retrieve BTP client secret from Key Vault
    $clientSecret = (Get-AzKeyVaultSecret -VaultName $keyVaultName -Name $secretName).SecretValue
    if (!($clientSecret)) {
        throw "Failed to retrieve the client secret from Azure Key Vault"
    }

    # Get the connector from data connectors API
    $path = "/subscriptions/{0}/resourceGroups/{1}/providers/Microsoft.OperationalInsights/workspaces/{2}/providers/Microsoft.SecurityInsights/dataConnectors/{3}?api-version=2024-01-01-preview" -f $subscriptionId, $resourceGroupName, $workspaceName, $connectorName
    $connector = (Invoke-AzRestMethod -Path $path -Method GET).Content | ConvertFrom-Json
    if (!($connector)) {
        throw "Failed to retrieve the connector"
    }

    # Add the updated client ID and client secret to the connector
    $connector.properties.auth | Add-Member -Type NoteProperty -Name "clientId" -Value $clientId
    $connector.properties.auth | Add-Member -Type NoteProperty -Name "clientSecret" -Value ($clientSecret | ConvertFrom-SecureString -AsPlainText)

    # Update the connector with the new auth object
    Invoke-AzRestMethod -Path $path -Method PUT -Payload ($connector | ConvertTo-Json -Depth 10)
}
catch {
    Write-Error "An error occurred: $_"
}