Ez a figyelő az egyidejű API-hívások maximális száma feltételének teljesülésekor riaszt.
Ha a felhasználók Windows hitelesítési problémákat, valamint az Exchange, a SharePoint és az egyéb üzleti alkalmazásokban kimaradásokat észlelnek, annak a MaxConcurrentAPI alacsony alapértelmezett értéke az oka. Ez az érték határozza meg, hogy egy-egy kiszolgáló egyszerre legfeljebb hány NTLM vagy Kerberos PAC jelszóellenőrzést tud kezelni.
Vegyük példaként a következő környezetet:
Egy vagy akár több erdőből és több tartományból áll a rendszer.
A különböző tartományokban felhasználók és erőforrások (például alkalmazások és proxykiszolgálók) is találhatók.
Egy Windows Server 2008 R2 operációs rendszert futtató erőforrás-kiszolgálóhoz számos NTLM bejelentkezési kérés érkezik a távoli tartományok felhasználóitól.
Ilyenkor az NTLM-kérések kiszolgálása időtúllépéssel végződik. Ez a hiba okozhatja például, ha az Exchange-ügyfelek nem tudnak hitelesíteni az Exchange-kiszolgálónál. Emiatt a felhasználók nem tudják elérni a postaládájukat, és ilyenkor a Microsoft Outlook látszólag nem válaszol.
A probléma azért lép fel, mert a rendszer eléri az NTLM API szabályozási határértékét.
A hitelesítési kéréseket küldő eszközök számának növekedése egyre gyakrabban okoz kimaradásokat a nagyobb méretű szervezetekben.
A felhőalapú rendszerek is újabb kihívások elé állítják az Active Directory szolgáltatásaira alapuló windowsos infrastruktúrákat.
A BPOS és az O365 esetében az értéket már megnöveltük, 10-re, illetve 150-re. A beállításjegyzék módosítását a a CSS-nél nyitott esetek nyomán világszerte számos helyen kellett elvégezni.
Növelje meg a MaxConcurrentApi nevű, a beállításjegyzékben található értéket azokon a kiszolgálókon, amelyeken a probléma jelentkezik. A MaxConcurrentApi beállítás módosításához kövesse az alábbi lépéseket:
1. Kattintson a Start gombra és a Futtatás parancsra, írja be a regedit kifejezést, majd kattintson az OK gombra.
2. Keresse meg a következő beállításjegyzékbeli kulcsot:
3. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters
4. Mutasson a Szerkesztés menü Új pontjára, majd kattintson a DWORD érték elemre.
5. Írja be a MaxConcurrentApi nevet, majd nyomja le az Enter billentyűt.
6. Kattintson a Szerkesztés menü Módosítás parancsára.
7. Adja meg a MaxConcurrentApi beállítás tízes számrendszerbeli értékét, majd kattintson az OK gombra.
8. A parancssorba írja be az alábbi parancsot, majd nyomja le az Enter billentyűt:
9. net stop netlogon
10. Írja be az alábbi parancsot, majd nyomja le az Enter billentyűt.
11. net start netlogon
Ellenőrizze, hogy a kiszolgáló és az általa használt tartományvezérlők között (illetve a megbízható tartományvezérlők között, ha a hiba tartományvezérlőn jelentkezik) nem lépnek fel késleltetések a hálózaton. A hálózati késleltetések önmagukban is előidézhetik a problémát, illetve ronthatnak is rajta.
Az NTLM-et használó alkalmazásokat és szolgáltatásokat próbálja inkább Kerberos-alapú hitelesítésre konfigurálni. Ennek módja alkalmazástól függ.
Ha Kerberos PAC-ellenőrzés jelentkezik tünetként, tiltsa le a Kerberos PAC-ellenőrzést, ha a szolgáltatás lehetővé teszi ezt. Ezt azon a kiszolgálón kell megtenni, amelynek az eseménynaplójában 7-es számú, Kerberos forrású bejegyzések megjelennek.
Megjegyzés: A Kerberos PAC-ellenőrzés nem tiltható le az IIS-alkalmazáskészletek és egyes Exchange-szolgáltatások esetében.
Megjegyzés: Annak meghatározásához, hogy az adott környezetben milyen MaxConcurrentApi értéket érdemes beállítani, tanulmányozza a következő tudásbáziscikket:
Tudásbáziscikk: 2688798
Az NTLM-alapú hitelesítés teljesítményének növelése a MaxConcurrentApi beállítás segítségével.
További információk
A témáról az alábbi TechNet-cikkben talál további információt. Configuring MaxConcurrentAPI for NTLM Pass-Through Authentication (A MaxConcurrentAPI érték beállítása NTLM átmenő hitelesítéshez).
Target | Microsoft.Windows.Server.2008.OperatingSystem | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | StateCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.Server.MaxConcurrentAPI.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | System.PrivilegedMonitoringAccount |
<UnitMonitor ID="Microsoft.Windows.Server.2008.MaxConcurrentAPI.Monitor" Accessibility="Public" Enabled="true" Target="Server2008!Microsoft.Windows.Server.2008.OperatingSystem" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="WindowsServer!Microsoft.Windows.Server.MaxConcurrentAPI.MonitorType" ConfirmDelivery="false" RunAs="System!System.PrivilegedMonitoringAccount">
<Category>StateCollection</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2008.MaxConcurrentAPI.Monitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="MaxConcurrentAPIAvailable" MonitorTypeStateID="Success" HealthState="Success"/>
<OperationalState ID="MaxConcurrentAPIReached" MonitorTypeStateID="Error" HealthState="Error"/>
</OperationalStates>
<Configuration>
<DiagnosticMode>0</DiagnosticMode>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
<ThresholdWaiters>50</ThresholdWaiters>
<ThresholdTimeouts>2000</ThresholdTimeouts>
</Configuration>
</UnitMonitor>