Udostępnij za pośrednictwem


Wdrażanie agenta łącznika danych SAP z poziomu wiersza polecenia

Ten artykuł zawiera opcje wiersza polecenia dotyczące wdrażania agenta łącznika danych SAP. W przypadku typowych wdrożeń zalecamy używanie portalu zamiast wiersza polecenia, ponieważ agenci łącznika danych instalowani za pośrednictwem wiersza polecenia mogą być zarządzani tylko za pośrednictwem wiersza polecenia.

Jeśli jednak używasz pliku konfiguracji do przechowywania poświadczeń zamiast usługi Azure Key Vault lub jeśli jesteś użytkownikiem zaawansowanym, który chce ręcznie wdrożyć łącznik danych, na przykład w klastrze Kubernetes, użyj procedur opisanych w tym artykule.

Chociaż można uruchamiać wielu agentów łącznika danych na jednej maszynie, zalecamy rozpoczęcie od jednego tylko jednego, monitorowanie wydajności, a następnie powolne zwiększanie liczby łączników. Zalecamy również, aby zespół ds. zabezpieczeń wykonał tę procedurę z pomocą zespołu SAP BASIS .

Uwaga

Ten artykuł dotyczy tylko agenta łącznika danych i nie jest odpowiedni dla rozwiązania bez agenta SAP (ograniczona wersja zapoznawcza).

Wymagania wstępne

Wdrażanie agenta łącznika danych przy użyciu tożsamości zarządzanej lub zarejestrowanej aplikacji

W tej procedurze opisano sposób tworzenia nowego agenta i łączenia go z systemem SAP za pośrednictwem wiersza polecenia, uwierzytelniania przy użyciu tożsamości zarządzanej lub zarejestrowanej aplikacji Microsoft Entra ID.

Aby wdrożyć agenta łącznika danych:

  1. Pobierz i uruchom skrypt kickstart wdrożenia:

    • W przypadku tożsamości zarządzanej użyj jednej z następujących opcji poleceń:

      • W przypadku chmury publicznej platformy Azure:

        wget -O sapcon-sentinel-kickstart.sh https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh && bash ./sapcon-sentinel-kickstart.sh
        
      • W przypadku platformy Microsoft Azure obsługiwanej przez firmę 21Vianet dodaj --cloud mooncake na końcu skopiowanego polecenia.

      • W przypadku usługi Azure Government — USA dodaj --cloud fairfax na końcu skopiowanego polecenia.

    • W przypadku zarejestrowanej aplikacji użyj następującego polecenia, aby pobrać skrypt kickstart wdrożenia z repozytorium GitHub usługi Microsoft Sentinel i oznaczyć go jako wykonywalny:

      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
      chmod +x ./sapcon-sentinel-kickstart.sh
      

      Uruchom skrypt, określając identyfikator aplikacji, wpis tajny (hasło), identyfikator dzierżawy i nazwę magazynu kluczy skopiowaną w poprzednich krokach. Na przykład:

      ./sapcon-sentinel-kickstart.sh --keymode kvsi --appid aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa --appsecret ssssssssssssssssssssssssssssssssss -tenantid bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb -kvaultname <key vault name>
      
    • Aby skonfigurować bezpieczną konfigurację SNC, określ następujące podstawowe parametry:

      • --use-snc
      • --cryptolib <path to sapcryptolib.so>
      • --sapgenpse <path to sapgenpse>
      • --server-cert <path to server certificate public key>

      Jeśli certyfikat klienta ma format crt lub .key , użyj następujących przełączników:

      • --client-cert <path to client certificate public key>
      • --client-key <path to client certificate private key>

      Jeśli certyfikat klienta ma format pfx lub p12 , użyj następujących przełączników:

      • --client-pfx <pfx filename>
      • --client-pfx-passwd <password>

      Jeśli certyfikat klienta został wystawiony przez urząd certyfikacji przedsiębiorstwa, dodaj następujący przełącznik dla każdego urzędu certyfikacji w łańcuchu zaufania:

      • --cacert <path to ca certificate>

      Na przykład:

      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
      chmod +x ./sapcon-sentinel-kickstart.sh    --use-snc     --cryptolib /home/azureuser/libsapcrypto.so     --sapgenpse /home/azureuser/sapgenpse     --client-cert /home/azureuser/client.crt --client-key /home/azureuser/client.key --cacert /home/azureuser/issuingca.crt    --cacert /home/azureuser/rootca.crt --server-cert /home/azureuser/server.crt
      

    Skrypt aktualizuje składniki systemu operacyjnego, instaluje interfejs wiersza polecenia platformy Azure i oprogramowanie platformy Docker oraz inne wymagane narzędzia (jq, netcat, curl) i monituje o podanie wartości parametrów konfiguracji. Podaj dodatkowe parametry skryptu, aby zminimalizować liczbę monitów lub dostosować wdrożenie kontenera. Aby uzyskać więcej informacji na temat dostępnych opcji wiersza polecenia, zobacz Dokumentacja skryptu Kickstart.

  2. Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby wprowadzić szczegóły oprogramowania SAP i magazynu kluczy i ukończyć wdrożenie. Po zakończeniu wdrażania zostanie wyświetlony komunikat potwierdzający:

    The process has been successfully completed, thank you!
    

    Zanotuj nazwę kontenera platformy Docker w danych wyjściowych skryptu. Aby wyświetlić listę kontenerów platformy Docker na maszynie wirtualnej, uruchom polecenie:

    docker ps -a
    

    W następnym kroku użyjesz nazwy kontenera platformy Docker.

  3. Wdrożenie agenta łącznika danych SAP wymaga przyznania tożsamości maszyny wirtualnej agenta z określonymi uprawnieniami do obszaru roboczego usługi Log Analytics włączonego dla usługi Microsoft Sentinel przy użyciu ról agenta aplikacji biznesowych i czytelnika usługi Microsoft Sentinel.

    Aby uruchomić polecenie w tym kroku, musisz być właścicielem grupy zasobów w obszarze roboczym usługi Log Analytics włączonym dla usługi Microsoft Sentinel. Jeśli nie jesteś właścicielem grupy zasobów w obszarze roboczym, tę procedurę można również wykonać później.

    Przypisz role operatora i czytelnika agenta aplikacji biznesowych usługi Microsoft Sentinel do tożsamości maszyny wirtualnej:

    1. Pobierz identyfikator agenta, uruchamiając <container_name> następujące polecenie, zastępując symbol zastępczy nazwą kontenera platformy Docker, który został utworzony za pomocą skryptu kickstart:

      docker inspect <container_name> | grep -oP '"SENTINEL_AGENT_GUID=\K[^"]+
      

      Na przykład zwrócony identyfikator agenta może mieć wartość 234fba02-3b34-4c55-8c0e-e6423ceb405b.

    2. Przypisz role agenta aplikacji biznesowych i czytelnika usługi Microsoft Sentinel, uruchamiając następujące polecenia:

    az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Microsoft Sentinel Business Applications Agent Operator" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
    
    az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Reader" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
    

    Zastąp wartości symboli zastępczych w następujący sposób:

    Symbol zastępczy Wartość
    <OBJ_ID> Identyfikator obiektu tożsamości maszyny wirtualnej.

    Aby znaleźć identyfikator obiektu tożsamości maszyny wirtualnej na platformie Azure:
    - W przypadku tożsamości zarządzanej identyfikator obiektu znajduje się na stronie Tożsamość maszyny wirtualnej.
    - W przypadku jednostki usługi przejdź do pozycji Aplikacja dla przedsiębiorstw na platformie Azure. Wybierz pozycję Wszystkie aplikacje , a następnie wybierz maszynę wirtualną. Identyfikator obiektu jest wyświetlany na stronie Przegląd .
    <SUB_ID> Identyfikator subskrypcji dla obszaru roboczego usługi Log Analytics włączony dla usługi Microsoft Sentinel
    <RESOURCE_GROUP_NAME> Nazwa grupy zasobów dla obszaru roboczego usługi Log Analytics włączonego dla usługi Microsoft Sentinel
    <WS_NAME> Nazwa obszaru roboczego usługi Log Analytics włączonego dla usługi Microsoft Sentinel
    <AGENT_IDENTIFIER> Identyfikator agenta wyświetlany po uruchomieniu polecenia w poprzednim kroku.
  4. Aby skonfigurować kontener platformy Docker do automatycznego uruchamiania, uruchom następujące polecenie, zastępując <container-name> symbol zastępczy nazwą kontenera:

    docker update --restart unless-stopped <container-name>
    

Procedura wdrażania generuje plik systemconfig.json zawierający szczegóły konfiguracji agenta łącznika danych SAP. Plik znajduje się w katalogu na maszynie /sapcon-app/sapcon/config/system wirtualnej.

Wdrażanie łącznika danych przy użyciu pliku konfiguracji

Usługa Azure Key Vault jest zalecaną metodą przechowywania poświadczeń uwierzytelniania i danych konfiguracji. Jeśli nie możesz używać usługi Azure Key Vault, w tej procedurze opisano sposób wdrażania kontenera agenta łącznika danych przy użyciu pliku konfiguracji.

Aby wdrożyć agenta łącznika danych:

  1. Utwórz maszynę wirtualną, na której ma zostać wdrożony agent.

  2. Przenieś zestaw SDK SAP NetWeaver na maszynę, na której chcesz zainstalować agenta.

  3. Uruchom następujące polecenia, aby pobrać skrypt Kickstart wdrożenia z repozytorium GitHub usługi Microsoft Sentinel i oznaczyć go jako wykonywalny:

    wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
    chmod +x ./sapcon-sentinel-kickstart.sh
    
  4. Uruchom skrypt:

    ./sapcon-sentinel-kickstart.sh --keymode cfgf
    

    Skrypt aktualizuje składniki systemu operacyjnego, instaluje interfejs wiersza polecenia platformy Azure i oprogramowanie platformy Docker oraz inne wymagane narzędzia (jq, netcat, curl) i monituje o podanie wartości parametrów konfiguracji. Podaj dodatkowe parametry skryptu zgodnie z potrzebami, aby zminimalizować liczbę monitów lub dostosować wdrożenie kontenera. Aby uzyskać więcej informacji, zobacz dokumentację skryptu Kickstart.

  5. Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby wprowadzić żądane szczegóły i ukończyć wdrożenie. Po zakończeniu wdrażania zostanie wyświetlony komunikat potwierdzający:

    The process has been successfully completed, thank you!
    

    Zanotuj nazwę kontenera platformy Docker w danych wyjściowych skryptu. Aby wyświetlić listę kontenerów platformy Docker na maszynie wirtualnej, uruchom polecenie:

    docker ps -a
    

    W następnym kroku użyjesz nazwy kontenera platformy Docker.

  6. Wdrożenie agenta łącznika danych SAP wymaga przyznania tożsamości maszyny wirtualnej agenta z określonymi uprawnieniami do obszaru roboczego usługi Log Analytics włączonego dla usługi Microsoft Sentinel przy użyciu ról agenta aplikacji biznesowych i czytelnika usługi Microsoft Sentinel.

    Aby uruchomić polecenia w tym kroku, musisz być właścicielem grupy zasobów w obszarze roboczym. Jeśli nie jesteś właścicielem grupy zasobów w obszarze roboczym, ten krok można również wykonać później.

    Przypisz role operatora i czytelnika agenta aplikacji biznesowych usługi Microsoft Sentinel do tożsamości maszyny wirtualnej:

    1. Pobierz identyfikator agenta, uruchamiając <container_name> następujące polecenie, zastępując symbol zastępczy nazwą kontenera platformy Docker utworzonego za pomocą skryptu Kickstart:

      docker inspect <container_name> | grep -oP '"SENTINEL_AGENT_GUID=\K[^"]+'
      

      Na przykład zwrócony identyfikator agenta może mieć wartość 234fba02-3b34-4c55-8c0e-e6423ceb405b.

    2. Przypisz role agenta aplikacji biznesowych i czytelnika usługi Microsoft Sentinel, uruchamiając następujące polecenia:

      az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Microsoft Sentinel Business Applications Agent Operator" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
      
      az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Reader" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
      

      Zastąp wartości symboli zastępczych w następujący sposób:

      Symbol zastępczy Wartość
      <OBJ_ID> Identyfikator obiektu tożsamości maszyny wirtualnej.

      Aby znaleźć identyfikator obiektu tożsamości maszyny wirtualnej na platformie Azure: w przypadku tożsamości zarządzanej identyfikator obiektu znajduje się na stronie Tożsamość maszyny wirtualnej. W przypadku jednostki usługi przejdź do pozycji Aplikacja dla przedsiębiorstw na platformie Azure. Wybierz pozycję Wszystkie aplikacje , a następnie wybierz maszynę wirtualną. Identyfikator obiektu jest wyświetlany na stronie Przegląd .
      <SUB_ID> Identyfikator subskrypcji obszaru roboczego usługi Log Analytics włączony dla usługi Microsoft Sentinel
      <RESOURCE_GROUP_NAME> Nazwa grupy zasobów dla obszaru roboczego usługi Log Analytics włączonego dla usługi Microsoft Sentinel
      <WS_NAME> Nazwa obszaru roboczego usługi Log Analytics włączonego dla usługi Microsoft Sentinel
      <AGENT_IDENTIFIER> Identyfikator agenta wyświetlany po uruchomieniu polecenia w poprzednim kroku.
  7. Uruchom następujące polecenie, aby skonfigurować kontener platformy Docker do automatycznego uruchamiania.

    docker update --restart unless-stopped <container-name>
    

Procedura wdrażania generuje plik systemconfig.json zawierający szczegóły konfiguracji agenta łącznika danych SAP. Plik znajduje się w katalogu na maszynie /sapcon-app/sapcon/config/system wirtualnej.

Przygotowywanie skryptu kickstart do bezpiecznej komunikacji z usługą SNC

W tej procedurze opisano sposób przygotowywania skryptu wdrażania do konfigurowania ustawień bezpiecznej komunikacji z systemem SAP przy użyciu SNC. Jeśli używasz SNC, przed wdrożeniem agenta łącznika danych należy wykonać tę procedurę.

Aby skonfigurować kontener na potrzeby bezpiecznej komunikacji z usługą SNC:

  1. Przenieś pliki libsapcrypto.so i sapgenpse do systemu, w którym tworzysz kontener.

  2. Przenieś certyfikat klienta, w tym zarówno klucze prywatne, jak i publiczne do systemu, w którym tworzysz kontener.

    Certyfikat klienta i klucz mogą być w formacie .p12, pfx lub Base64 .crt i .key .

  3. Przenieś certyfikat serwera (tylko klucz publiczny) do systemu, w którym tworzysz kontener.

    Certyfikat serwera musi być w formacie crt base64.

  4. Jeśli certyfikat klienta został wystawiony przez urząd certyfikacji przedsiębiorstwa, przenieś certyfikaty urzędu wystawiającego certyfikaty urzędu certyfikacji i głównego urzędu certyfikacji do systemu, w którym tworzysz kontener.

  5. Pobierz skrypt kickstart z repozytorium GitHub usługi Microsoft Sentinel:

    wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
    
  6. Zmień uprawnienia skryptu, aby ustawić go jako wykonywalny:

    chmod +x ./sapcon-sentinel-kickstart.sh
    

Aby uzyskać więcej informacji, zobacz Kickstart deployment script reference for the Microsoft Sentinel for SAP applications data connector agent (Dokumentacja skryptu wdrażania usługi Kickstart dla agenta łącznika danych aplikacji SAP).

Aby uzyskać optymalne wyniki monitorowania tabeli SAP PAHI, otwórz plik systemconfig.json do edycji i w [ABAP Table Selector](reference-systemconfig-json.md#abap-table-selector) sekcji włącz parametry i PAHI_FULL PAHI_INCREMENTAL .

Aby uzyskać więcej informacji, zobacz Systemconfig.json odwołanie do pliku i Sprawdź, czy tabela PAHI jest aktualizowana w regularnych odstępach czasu.

Sprawdzanie łączności i kondycji

Po wdrożeniu agenta łącznika danych SAP sprawdź kondycję i łączność agenta. Aby uzyskać więcej informacji, zobacz Monitorowanie kondycji i roli systemów SAP.

Następny krok

Po wdrożeniu łącznika przejdź do wdrożenia rozwiązania Microsoft Sentinel dla zawartości aplikacji SAP: