BizTalk Checkmk Pulse - ACC Berechtigung und Architektur Stand: 30.07.2026 BEFUND ====== Host: AV23AGPWBIO1 Checkmk-Identitaet: NT AUTHORITY\SYSTEM Alte Netzwerkidentitaet: BEW\AV23AGPWBIO1$ Fehler: COMException HRESULT=0x80131904 Innerer Fehler: Login failed for user 'BEW\AV23AGPWBIO1$' Der lokale BizTalk-WMI-Namespace war erreichbar. Datenbankgestuetzte BizTalk-WMI-Abfragen scheiterten am SQL-Login des Maschinenkontos. NEUE VERBINDLICHE ARCHITEKTUR ============================= Das Maschinenkonto erhaelt keine BizTalk-Berechtigung. 1. Ein dediziertes Dienstkonto oder bevorzugt gMSA laeuft minuetlich als Scheduled Task "BizTalk Checkmk Pulse Provider". 2. Dieses Konto fuehrt BizTalkCheckmkPulse.exe --collect aus. 3. Es schreibt atomar einen SHA-256-geschuetzten Snapshot nach: %ProgramData%\BizTalkCheckmkPulse\data\biztalk-checkmk-pulse.snapshot 4. Der Checkmk-Agent bleibt LocalSystem und startet nur den Consumer. 5. Der Consumer liest und validiert den Snapshot. Er fuehrt kein WMI und keinen SQL-Zugriff aus. BERECHTIGUNG DES PROVIDER-KONTOS ================================ Bevorzugte Rolle fuer BizTalk Server 2020: BizTalk Server Read Only Users SQL-Datenbankrolle: BTS_READONLY_USERS Die exakt konfigurierte Gruppe mit einem bereits berechtigten Konto ermitteln: Get-CimInstance -Namespace root/MicrosoftBizTalkServer ` -ClassName MSBTS_GroupSetting | Select-Object Name, BizTalkReadOnlyUserGroup, BizTalkOperatorGroup, MgmtDbServerName, MgmtDbName Das Provider-Konto durch AD-Administration in BizTalkReadOnlyUserGroup aufnehmen. Nicht vom Standardnamen ausgehen. Die Operator-Gruppe ist nur eine begruendungspflichtige Eskalation, falls eine konkret benoetigte WMI-Klasse trotz bestaetigter Read-Only-Zuordnung und neuem Anmeldetoken verweigert wird. NICHT DURCHFUEHREN ================== - keinen SQL-Einzellogin fuer Provider- oder Maschinenkonto - keine ad-hoc BizTalk-Datenbankrollen - kein db_owner oder sysadmin - keine pauschalen DCOM-/WMI-ACL-Erweiterungen - Checkmk-Agentdienst nicht auf das Provider-Konto umstellen - Maschinenkonto BEW\AV23AGPWBIO1$ nicht fuer diese Loesung berechtigen INSTALLATION ============ gMSA: .\Install-BizTalkCheckmkPulse.ps1 ` -CollectorAccount 'BEW\svc_biztalk_cmk$' ` -Gmsa ` -EnvironmentName ACC Regulaeres Dienstkonto: .\Install-BizTalkCheckmkPulse.ps1 ` -CollectorAccount 'BEW\svc_biztalk_cmk' ` -EnvironmentName ACC VERIFIKATION ============ Get-ScheduledTaskInfo -TaskName 'BizTalk Checkmk Pulse Provider' Get-Content ` "$env:ProgramData\BizTalkCheckmkPulse\logs\*.log" ` -Tail 100 Get-Item ` "$env:ProgramData\BizTalkCheckmkPulse\data\biztalk-checkmk-pulse.snapshot" & "$env:ProgramFiles\BizTalkCheckmkPulse\BizTalkCheckmkPulse.exe" --consume & "C:\Program Files (x86)\checkmk\service\cmk-agent-ctl.exe" dump | Select-String -Pattern "BizTalk|UNKNOWN|Permission|snapshot" -Context 0,1 ERWARTET ======== - LastTaskResult = 0 - Snapshot wird minuetlich aktualisiert - Provider-Log nennt das dedizierte Konto - BizTalk Platform zeigt read_only_group= - BizTalk SQL Access zeigt targets=2 und available=2 - keine berechtigungsbedingten UNKNOWN-Services - LocalSystem besitzt auf data nur Lesezugriff QUELLEN ======= https://learn.microsoft.com/en-us/biztalk/core/managing-biztalk-server-security https://learn.microsoft.com/en-us/biztalk/core/windows-groups-and-user-accounts-in-biztalk-server https://learn.microsoft.com/en-us/biztalk/core/technical-reference/msbts-groupsetting-biztalkreadonlyusergroup-property-wmi https://docs.checkmk.com/latest/en/agent_windows.html https://docs.checkmk.com/latest/en/localchecks.html