BizTalk Checkmk Pulse - ACC Berechtigungsfreigabe
Stand: 29.07.2026

BEFUND
======

Host: AV23AGPWBIO1
Lokale Identitaet: NT AUTHORITY\SYSTEM (LocalSystem)
Netzwerkidentitaet: BEW\AV23AGPWBIO1$
Fehler: COMException HRESULT=0x80131904
Innerer Fehler: Login failed for user 'BEW\AV23AGPWBIO1$'

Der lokale BizTalk-WMI-Namespace ist erreichbar. Der BizTalk-WMI-Provider wird
aber bei seinem SQL-Zugriff als Maschinenkonto abgewiesen. Deshalb sind
Platform, Host Instances, Runtime Artifacts und Suspended Instances UNKNOWN.
BizTalk SQL Access kann ohne MSBTS_GroupSetting keine Ziele ermitteln.

Keine DCOM-, Firewall- oder WMI-Namespace-Rechte erweitern. Keinen direkten
SQL-Login, keine manuellen BizTalk-Datenbankrollen und kein sysadmin fuer das
Maschinenkonto anlegen.

FREIGABE
========

1. Exakte Operator-Gruppe ermitteln

In der BizTalk Administration Console:

  BizTalk Group > Properties > General > BizTalk Operators Group

Nicht ungeprueft den Standardnamen verwenden. Mit einem bereits berechtigten
Konto ist alternativ folgende Abfrage moeglich:

  Get-CimInstance -Namespace root/MicrosoftBizTalkServer `
      -ClassName MSBTS_GroupSetting |
      Select-Object Name, BizTalkOperatorGroup, MgmtDbServerName, MgmtDbName

2. Computerobjekt durch einen AD-Administrator aufnehmen

  Import-Module ActiveDirectory
  $computer = Get-ADComputer -Identity 'AV23AGPWBIO1'
  Add-ADGroupMember `
      -Identity '<EXAKTE_BIZTALK_OPERATOR_GRUPPE>' `
      -Members $computer `
      -WhatIf

Ziele kontrollieren und danach denselben Add-ADGroupMember-Befehl ohne
-WhatIf ausfuehren.

Mitgliedschaft pruefen:

  Get-ADPrincipalGroupMembership -Identity 'AV23AGPWBIO1' |
      Select-Object Name, SamAccountName

3. Neue Gruppenzugehoerigkeit aktivieren

AD-Replikation abwarten. Bevorzugt den BizTalk-Server in einem Wartungsfenster
neu starten. Alternativ in einer administrativen Shell:

  klist purge -li 0x3e7

Danach den zuvor eindeutig ermittelten Checkmk-Agent-Dienst neu starten. Falls
die neue Mitgliedschaft nicht wirksam wird, den Server neu starten.

4. Im echten Checkmk-Kontext verifizieren

  & "C:\Program Files (x86)\checkmk\service\cmk-agent-ctl.exe" dump |
      Select-String `
          -Pattern "BizTalk|Login failed|Wmi/Permission|Sql/Permission|UNKNOWN" `
          -Context 0,1

Erwartetes Ergebnis:

- BizTalk Platform ist OK und zeigt operator_group=<exakte Gruppe>.
- BizTalk SQL Access zeigt targets=2, available=2,
  discovery_complete=True.
- Host Instances, Runtime Artifacts und Suspended Instances sind nicht mehr
  wegen WMI-/SQL-Berechtigungen UNKNOWN.
- Kein Login failed fuer BEW\AV23AGPWBIO1$.

Der separate Event-Log-Service zeigte im Screenshot zwei Fehler und sechs
Warnungen. Diese Ereignisse bleiben nach der Berechtigungsfreigabe fachlich zu
pruefen.

SICHERHEIT
==========

Die Gruppenmitgliedschaft des Computerobjekts steht allen Diensten zur
Verfuegung, die auf AV23AGPWBIO1 als LocalSystem laufen und auf
Netzwerkressourcen zugreifen. Mit Security und BizTalk-Betrieb abstimmen.

Ist dies nicht akzeptabel, ist ein separater Collector unter einem dedizierten
gMSA-/Dienstkonto mit BizTalk-Operator-Rechten die sauberere Architektur. Nicht
allein fuer dieses Plugin die Identitaet des gesamten Checkmk-Agent-Dienstes
aendern.

QUELLEN
=======

https://learn.microsoft.com/en-us/windows/win32/services/localsystem-account
https://learn.microsoft.com/en-us/entra/architecture/service-accounts-computer
https://learn.microsoft.com/en-us/biztalk/core/windows-groups-and-user-accounts-in-biztalk-server
https://learn.microsoft.com/en-us/biztalk/core/access-control-for-administrative-roles
https://learn.microsoft.com/en-us/biztalk/core/how-to-modify-group-properties
https://learn.microsoft.com/en-us/powershell/module/activedirectory/add-adgroupmember
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/klist
