專家組態選項、內部部署和 SAPControl 記錄來源
本文描述如何在專家或自訂程序中,部署適用於 SAP 的 Microsoft Sentinel 資料連接器,例如使用內部部署機器和 Azure Key Vault 來儲存憑證。
注意
部署適用於 SAP 的 Microsoft Sentinel 資料連接器的預設和建議程序是使用 Azure VM。 本文適用於進階使用者。
先決條件
無論您的部署方法為何,部署適用於 SAP 的 Microsoft Sentinel 資料連接器的基本必要條件都相同。
開始之前,請確定您的系統符合主要 SAP 資料連線器中先決文件記載的必要條件。
建立 Azure Key Vault
建立 Azure 金鑰保存庫,以便您專用於適用于 SAP® 應用程式資料連線器的 Microsoft Sentinel 解決方案。
執行下列命令來建立 Azure Key Vault,並授與 Azure 服務主體的存取權:
kvgp=<KVResourceGroup>
kvname=<keyvaultname>
spname=<sp-name>
kvname=<keyvaultname>
# Optional when Azure MI not enabled - Create sp user for AZ cli connection, save details for env.list file
az ad sp create-for-rbac –name $spname --role Contributor --scopes /subscriptions/<subscription_id>
SpID=$(az ad sp list –display-name $spname –query “[].appId” --output tsv
#Create key vault
az keyvault create \
--name $kvname \
--resource-group $kvgp
# Add access to SP
az keyvault set-policy --name $kvname --resource-group $kvgp --object-id $spID --secret-permissions get list set
如需詳細資訊,請參閱快速入門:使用 Azure CLI 來建立金鑰保存庫。
新增 Azure Key Vault 祕密
若要新增 Azure 金鑰保存庫祕密,請使用您自己的系統識別碼和您想要新增的認證來執行下列指令碼:
#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
如需詳細資訊,請參閱 az keyvault secret CLI 文件。
執行專家/自訂安裝
此程序描述如何使用專家或自訂安裝來部署適用於 SAP 的 Microsoft Sentinel 資料連線器,例如在內部部署安裝時。
建議您在備妥金鑰保存庫及 SAP 認證之後執行此程序。
若要部署適用於 SAP 的 Microsoft Sentinel 資料連線器:
在您的內部部署機器上,從 SAP Launchpad 網站>[SAP NW RFC SDK]>[SAP NW RFC SDK 7.50]>[nwrfc750X_X-xxxxxxx.zip] 下載最新版的 SAP NW RFC SDK。
注意
您需要 SAP 使用者登入資訊才能存取 SDK,而且您必須下載符合您作業系統的 SDK。
請務必選取 [LINUX ON X86_64] 選項。
在您的內部部署機器使用有意義的名稱建立新的資料夾,並將 SDK zip 檔案複製到新資料夾中。
將 Microsoft Sentinel 解決方案 GitHub 存放庫複製到您的內部部署電腦,並將適用于 SAP® 應用程式解決方案的 Microsoft Sentinel 解決方案複製到新的資料夾中 systemconfig.ini 檔案。
例如:
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.ini cp <**nwrfc750X_X-xxxxxxx.zip**> /home/$(pwd)/sapcon/<sap-sid>/
視需要編輯 systemconfig.ini 檔案,並使用內嵌註解作為指南。 如需詳細資訊,請參閱手動設定適用於 SAP 的 Microsoft Sentinel 資料連接器。
若要測試您的設定,您可能想要將使用者和密碼直接新增至 systemconfig.ini 組態檔。 雖然我們建議您使用 Azure 金鑰保存庫以儲存認證,但您也可以使用 env.list 檔案、Docker 祕密,或直接將憑證新增至 systemconfig.ini 檔案。
使用 systemconfig.ini 檔案中的指示,定義您想要內嵌至 Microsoft Sentinel 的記錄。 例如,請參閱定義傳送至 Microsoft Sentinel 的 SAP 記錄。
使用 systemconfig.ini 檔案中的指示定義下列設定:
- 是否要在稽核記錄中包含使用者電子郵件地址
- 是否重試失敗的 API 呼叫
- 是否要包含 cexal 稽核記錄
- 是否要等候資料擷取之間的時間間隔 (特別是針對大型擷取)
如需詳細資訊,請參閱 SAL 記錄連接器設定。
將更新的 systemconfig.ini 檔案儲存在機器上的 sapcon 目錄中。
如果您選擇使用 env.list 檔案作為憑證,請建立具有必要憑證的暫存 env.list 檔案。 正確執行 Docker 容器之後,請務必刪除此檔案。
注意
下列指令碼包含每個連線到特定 ABAP 系統的 Docker 容器。 視您的環境需求修改指令碼。
請執行:
############################################################## # 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 SENTINEL WORKSPACE id> LOGWSPUBLICKEY=<SET 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> ##############################################################
下載並執行已安裝 SAP 資料連接器且預先定義的 Docker 映像。 請執行:
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>
確保正確執行 Docker 容器。 請執行:
docker logs –f sapcon-[SID]
繼續 部署適用于 SAP® 應用程式的 Microsoft Sentinel 解決方案。
部署解決方案可讓 SAP 資料連接器顯示在 Microsoft Sentinel 中,並部署 SAP 活頁簿和分析規則。 完成時,請手動新增和自訂您的 SAP 關注清單。
如需詳細資訊,請參閱 從內容中樞部署適用于 SAP 應用程式的® Microsoft Sentinel 解決方案。
手動設定適用於 SAP 的 Microsoft Sentinel 資料連接器
適用於 SAP 的 Microsoft Sentinel 資料連接器是在systemconfig.ini 檔案中設定,這是您在部署程序中複製到 SAP 資料連線器電腦的檔案。
下列程式碼顯示範例 systemconfig.ini 檔案:
[Secrets Source]
secrets = '<DOCKER_RUNTIME/AZURE_KEY_VAULT/DOCKER_SECRETS/DOCKER_FIXED>'
keyvault = '<SET_YOUR_AZURE_KEYVAULT>'
intprefix = '<SET_YOUR_PREFIX>'
[ABAP Central Instance]
##############################################################
# Define the following values according to your server configuration.
ashost = <SET_YOUR_APPLICATION_SERVER_HOST>
mshost = <SET_YOUR_MESSAGE_SERVER_HOST> - #In case different then App
##############################################################
group = <SET_YOUR_LOGON_GROUP>
msserv = <SET_YOUR_MS_SERVICE> - #Required only if the message server service is not defined as sapms<SYSID> in /etc/services
sysnr = <SET_YOUR_SYS_NUMBER>
user = <SET_YOUR_USER>
##############################################################
# Enter your password OR your X509 SNC parameters
passwd = <SET_YOUR_PASSWORD>
snc_partnername = <SET_YOUR_SNC_PARTNER_NAME>
snc_lib = <SET_YOUR_SNC_LIBRARY_PATH>
x509cert = <SET_YOUR_X509_CERTIFICATE>
##############################################################
sysid = <SET_YOUR_SYSTEM_ID>
client = <SET_YOUR_CLIENT>
[Azure Credentials]
loganalyticswsid = <SET_YOUR_LOG_ANALYTICS_WORKSPACE_ID>
publickey = <SET_YOUR_PUBLIC_KEY>
[File Extraction ABAP]
osuser = <SET_YOUR_SAPADM_LIKE_USER>
##############################################################
# Enter your password OR your X509 SNC parameters
ospasswd = <SET_YOUR_SAPADM_PASS>
x509pkicert = <SET_YOUR_X509_PKI_CERTIFICATE>
##############################################################
appserver = <SET_YOUR_SAPCTRL_SERVER IP OR FQDN>
instance = <SET_YOUR_SAP_INSTANCE NUMBER, example 10>
abapseverity = <SET_ABAP_SEVERITY 0 = All logs ; 1 = Warning ; 2 = Error>
abaptz = <SET_ABAP_TZ --Use ONLY GMT FORMAT-- example - For OS Timezone = NZST use abaptz = GMT+12>
[File Extraction JAVA]
javaosuser = <SET_YOUR_JAVAADM_LIKE_USER>
##############################################################
# Enter your password OR your X509 SNC parameters
javaospasswd = <SET_YOUR_JAVAADM_PASS>
javax509pkicert = <SET_YOUR_X509_PKI_CERTIFICATE>
##############################################################
javaappserver = <SET_YOUR_JAVA_SAPCTRL_SERVER IP ADDRESS OR FQDN>
javainstance = <SET_YOUR_JAVA_SAP_INSTANCE for example 10>
javaseverity = <SET_JAVA_SEVERITY 0 = All logs ; 1 = Warning ; 2 = Error>
javatz = <SET_JAVA_TZ --Use ONLY GMT FORMAT-- example - For OS Timezone = NZST use javatz = GMT+12>
定義傳送至 Microsoft Sentinel 的 SAP 記錄
將下列程式碼新增至適用于 SAP® 應用程式的 Microsoft Sentinel 解決方案 systemconfig.ini 檔案,以定義傳送至 Microsoft Sentinel 的記錄。
如需詳細資訊,請參閱 適用于 SAP® 應用程式解決方案記錄的 Microsoft Sentinel 解決方案參考 (公開預覽) 。
##############################################################
# Enter True OR False for each log to send those logs to Microsoft Sentinel
[Logs Activation Status]
ABAPAuditLog = True
ABAPJobLog = True
ABAPSpoolLog = True
ABAPSpoolOutputLog = True
ABAPChangeDocsLog = True
ABAPAppLog = True
ABAPWorkflowLog = True
ABAPCRLog = True
ABAPTableDataLog = False
# ABAP SAP Control Logs - Retrieved by using SAP Conntrol interface and OS Login
ABAPFilesLogs = False
SysLog = False
ICM = False
WP = False
GW = False
# Java SAP Control Logs - Retrieved by using SAP Conntrol interface and OS Login
JAVAFilesLogs = False
##############################################################
SAL 記錄連接器設定
將下列程式碼新增至適用於 SAP 的 Microsoft Sentinel 資料連線器 systemconfig.ini 檔案,以定義內嵌至 Microsoft Sentinel 的 SAP 記錄其他設定。
如需詳細資訊,請參閱執行專家/自訂 SAP 資料連線器安裝。
##############################################################
[Connector Configuration]
extractuseremail = True
apiretry = True
auditlogforcexal = False
auditlogforcelegacyfiles = False
timechunk = 60
##############################################################
本節可讓您設定下列參數:
參數名稱 | 描述 |
---|---|
extractuseremail | 判斷稽核記錄是否包含使用者電子郵件地址。 |
apiretry | 判斷是否將 API 呼叫重試為容錯移轉機制。 |
auditlogforcexal | 判斷系統是否針對非 SAL 系統 (例如 SAP BASIS 7.4 版) 強制使用稽核記錄。 |
auditlogforcelegacyfiles | 判斷系統是否強制使用具有舊版系統功能的稽核記錄,例如從具有較低修補層級的 SAP BASIS 7.4 版。 |
timechunk | 判斷系統是否在資料擷取之間等候特定分鐘數作為間隔。 如果您預期大量資料,請使用此參數。 例如,在前 24 小時內的初始資料載入期間,您可能只想每 30 分鐘執行一次資料擷取,讓每個資料有足夠的時間擷取。 在這種情況下,請將此值設定為 30。 |
設定 ABAP SAP Control 執行個體
若要將所有 ABAP 記錄內嵌至 Microsoft Sentinel,包括 NW RFC 和 SAP Control Web 服務型記錄,請設定下列 ABAP SAP 控制詳細資料:
設定 | 描述 |
---|---|
javaappserver | 輸入您的 SAP Control ABAP 伺服器主機。 例如: contoso-erp.appserver.com |
javainstance | 輸入您的 SAP Control ABAP 執行個體編號。 例如: 00 |
abaptz | 以 GMT 格式輸入 SAP Control ABAP 伺服器上設定的時區。 例如: GMT+3 |
abapseverity | 輸入您要將 ABAP 記錄內嵌至 Microsoft Sentinel 的最低、內涵嚴重性的層級。 數值包括: - 0 = 所有記錄 - 1 = 警告 - 2 = 錯誤 |
設定 JAVA SAP Control 執行個體
若要將 SAP Control Web 服務記錄內嵌至 Microsoft Sentine 中l,請設定下列 JAVA SAP Control 實例詳細資料:
參數 | 描述 |
---|---|
javaappserver | 輸入您的 SAP Control JAVA 伺服器主機。 例如: contoso-java.server.com |
javainstance | 輸入您的 SAP Control ABAP 執行個體編號。 例如: 10 |
javatz | 以 GMT 格式輸入 SAP Control JAVA 伺服器上設定的時區。 例如: GMT+3 |
javaseverity | 輸入您要將 Web 服務記錄內嵌至 Microsoft Sentinel 的最低、內涵嚴重性的層級。 數值包括: - 0 = 所有記錄 - 1 = 警告 - 2 = 錯誤 |
設定使用者主資料收集
若要直接從 SAP 系統內嵌資料表,其中包含使用者和角色授權的詳細資料,請使用每個資料表的 True
/False
語句來設定您的 systemconfig.ini 檔案。
例如:
[ABAP Table Selector]
USR01_FULL = True
USR02_FULL = True
USR02_INCREMENTAL = True
UST04_FULL = True
AGR_USERS_FULL = True
AGR_USERS_INCREMENTAL = True
USR21_FULL = True
AGR_1251_FULL = True
ADR6_FULL = True
AGR_TCODES_FULL = True
DEVACCESS_FULL = True
AGR_DEFINE_FULL = True
AGR_DEFINE_INCREMENTAL = True
AGR_PROF_FULL = True
PAHI_FULL = True
如需詳細資訊,請參閱直接從 SAP 系統擷取的資料表。
下一步
安裝 SAP 資料連線器之後,您可以新增 SAP 相關安全性內容。
如需詳細資訊,請參閱部署 SAP 解決方案。
如需詳細資訊,請參閱