Probleme mit dem Umwandeln von Sids in Namen

Hallo liebe Freunde des AD. Wir haben diesmal als Thema eine Warnung vor potentiellen Problemen mit Windows Server 2012 Domain Controllern.

Es gibt zwar schon eine beträchtliche Liste von „Known Issues“ für Windows Server 2012, die wenigsten betreffen dem Mischbetrieb mit anderen Windows-Versionen auf Domain Controllern und Mitgliedern. Wir haben jedoch nun ein Problem gefunden, dass sehr viele Kunden betreffen könnte. Es hat mit zwei neuen Sids in Windows Server 2012 zu tun, die der Domain Controller in alle NTLM-Anmeldungen und Kerberos-Antworten packt.

Viele Applikationen gehen durch die Liste der Sids im Access Token des Benutzers und möchten den Namen der Gruppe um eine Applikationsrolle zu prüfen. Ein gängiger Ansatz dafür ist zum Beispiel IsInRole aus der .Net Runtime. Wenn die Auflösung einer der Sids nicht klappt gibt es eine Exception oder Fehler wie:

"An error (1301) occurred while enumerating the groups. The group's SID could not be resolved." when performing a UserPrincipal.GetAuthorizationGroups()

Error 1301 (ERROR_SOME_NOT_MAPPED) returned.

Die Applikationen berichten oft nicht, um welche Sids es geht, und nicht immer ist jemand mit Debugging-Können verfügbar. Ihr könnt in so einem Fall die Sids eventuell mit dem LSAP-Logging finden. Es kann sein, dass es custom Sids sind, wo die trusted Domains gerade nicht funktionieren. Aber wahrscheinlicher ist, dass es um die beiden Sids S-1-18-1 und S-1-18-2 geht, beschrieben sind die in der Tabelle auf dieser Seite: https://msdn.microsoft.com/en-us/library/cc980032.aspx

  • S-1-18-1 kommt ins Access Token, wenn die Anmeldung auf einer Prüfung von Credentials basiert, also zum Beispiel einem Kennwort, Zertifikat oder einer biometrischen Eigenschaft.
  • S-1-18-2 packt der Domain Controller ins Token, wenn die Anmeldung auf einer Kerberos S4U Proxy Anfrage basiert, also zum Beispiel eine Protocol Transition durchgeführt wurde.

Diese beiden Sids konnten bisher auf Betriebssystemen älter als Windows 8 oder Server 2012 nicht aufgelöst werden. Seit Juli gibt es nun ein Update für Windows 7 und Server 2008 R2, der das nachrüstet:

2830145        SID S-1-18-1 and SID S-1-18-2 can't be mapped on Windows 7 or Windows Server 2008 R2-based computers in a domain environment

Ein Update für Windows Server 2008 wird aktuell noch geprüft. Wir schlagen vor, dieses Update auf alle Maschinen der Umgebung auszubringen, wenn eine Applikation das Token ausliest und nach den Namen für die Sids fragt. Diese Applikationen und auch die Windows Server 2012 DCs werden eher nicht weniger…

So, nun kann es mit dem Deployment der Windows Server 2012 DCs endlich losgehen.

Euer

Herbert