Udostępnij za pośrednictwem


Identyfikator zdarzenia DCOM 10016 jest zalogowany w systemie Windows

Ten artykuł zawiera obejście umożliwiające rozwiązanie zdarzenia 10016 zarejestrowanego w systemie Windows podczas uzyskiwania dostępu do składników DCOM.

Dotyczy: Windows 10 — wszystkie wersje, Windows Server 2019, Windows Server 2016
Oryginalny numer KB: 4022522

Symptomy

Na komputerze z systemem Windows 10, Windows Server 2019 lub Windows Server 2016 w dziennikach zdarzeń systemu jest rejestrowane następujące zdarzenie.

Source:        Microsoft-Windows-DistributedCOM  
Event ID:      10016  
Description: The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID  
{D63B10C5-BB46-4990-A94F-E40B9D520160}  
and APPID  
{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}  
to the user NT AUTHORITY\SYSTEM SID (S-1-5-18) from address LocalHost (using LRPC) running in the application container Unavailable SID (Unavailable). This security permission can be modified using the Component Services administrative tool.d

Source:        Microsoft-Windows-DistributedCOM  
Event ID:      10016  
Description: The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID  
{260EB9DE-5CBE-4BFF-A99A-3710AF55BF1E}  
and APPID  
{260EB9DE-5CBE-4BFF-A99A-3710AF55BF1E}  
to the user machine\user SID (S-1-5-21-xxxxxxxxx-xxxxxxxxxx-xxxxxxxxxx-xxxx) from address LocalHost (using LRPC) running in the application container Microsoft.Windows.ShellExperienceHost_10.0.14393.726_neutral_neutral_cw5n1h2txyewy SID (S-1-15-2-xxxxxxxxx-xxxxxxxxxx-xxxxxxxxx-xxxxxxxxxx-xxxxxxxxxx-xxxxxxxxxx-xxxxxxxxxx). This security permission can be modified using the Component Services administrative tool.

Source:        Microsoft-Windows-DistributedCOM  
Event ID:      10016  
Description: The machine-default permission settings do not grant Local Activation permission for the COM Server application with CLSID  
{C2F03A33-21F5-47FA-B4BB-156362A2F239}  
and APPID  
{316CDED5-E4AE-4B15-9113-7055D84DCC97}  
to the user NT AUTHORITY\LOCAL SERVICE SID (S-1-5-19) from address LocalHost (using LRPC) running in the application container Unavailable SID (Unavailable). This security permission can be modified using the Component Services administrative tool.

Source:        Microsoft-Windows-DistributedCOM  
Event ID:      10016  
Description: The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID  
{6B3B8D23-FA8D-40B9-8DBD-B950333E2C52}  
and APPID  
{4839DDB7-58C2-48F5-8283-E1D1807D0D7D}  
to the user NT AUTHORITY\LOCAL SERVICE SID (S-1-5-19) from address LocalHost (using LRPC) running in the application container Unavailable SID (Unavailable). This security permission can be modified using the Component Services administrative tool.

Przyczyna

Te zdarzenia 10016 są rejestrowane, gdy składniki firmy Microsoft próbują uzyskać dostęp do składników DCOM bez wymaganych uprawnień. W takim przypadku to zachowanie jest oczekiwane i zgodnie z projektem.

Zaimplementowano wzorzec kodowania, w którym kod najpierw próbuje uzyskać dostęp do składników DCOM przy użyciu jednego zestawu parametrów. Jeśli pierwsza próba zakończy się niepowodzeniem, spróbuje ponownie z innym zestawem parametrów. Powodem, dla którego nie pomija pierwszej próby, jest to, że istnieją scenariusze, w których może się odnieść sukces. W tych scenariuszach jest to preferowane.

Rozwiązanie

Te zdarzenia można bezpiecznie zignorować, ponieważ nie wpływają one niekorzystnie na funkcjonalność i są projektowane. Jest to akcja zalecana dla tych zdarzeń.

W razie potrzeby zaawansowani użytkownicy i specjaliści IT mogą pominąć te zdarzenia w widoku w Podgląd zdarzeń. Aby to zrobić, utwórz filtr i ręcznie edytuj zapytanie XML filtru podobne do następującego:

<QueryList>
  <Query Id="0" Path="System">
    <Select Path="System">*</Select>
    <Suppress Path="System">
      *[System[(EventID=10016)]]
      and
      *[EventData[
        (
          Data[@Name='param4'] and Data='{D63B10C5-BB46-4990-A94F-E40B9D520160}' and
          Data[@Name='param5'] and Data='{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}' and
          Data[@Name='param8'] and Data='S-1-5-18'
        )
        or
        ( Data[@Name='param4'] and Data='{260EB9DE-5CBE-4BFF-A99A-3710AF55BF1E}' and
          Data[@Name='param5'] and Data='{260EB9DE-5CBE-4BFF-A99A-3710AF55BF1E}'
        )
        or
        (
          Data[@Name='param4'] and Data='{C2F03A33-21F5-47FA-B4BB-156362A2F239}' and
          Data[@Name='param5'] and Data='{316CDED5-E4AE-4B15-9113-7055D84DCC97}' and
          Data[@Name='param8'] and Data='S-1-5-19'
        )
        or
        (
          Data[@Name='param4'] and Data='{6B3B8D23-FA8D-40B9-8DBD-B950333E2C52}' and
          Data[@Name='param5'] and Data='{4839DDB7-58C2-48F5-8283-E1D1807D0D7D}' and
          Data[@Name='param8'] and Data='S-1-5-19'
        )
      ]]
    </Suppress>
  </Query>
</QueryList>

W tym zapytaniu:

  • parametrm4 odpowiada identyfikatorowi CLSID aplikacji serwera COM.
  • parametrm5 odpowiada identyfikatorowi APPID.
  • parametrm8 odpowiada identyfikatorowi SID kontekstu zabezpieczeń.

Wszystkie z nich są rejestrowane w dziennikach zdarzeń 10016.

Aby uzyskać więcej informacji na temat ręcznego konstruowania zapytań Podgląd zdarzeń, zobacz Korzystanie z zdarzeń.

Można również obejść ten problem, modyfikując uprawnienia składników DCOM, aby zapobiec rejestrowaniu tego błędu. Nie zalecamy jednak tej metody, ponieważ:

  • Te błędy nie wpływają niekorzystnie na funkcjonalność
  • Modyfikowanie uprawnień może mieć niezamierzone skutki uboczne.