Identyfikator zdarzenia DCOM 10016 jest zalogowany w systemie Windows

Ten artykuł zawiera obejście problemu z zdarzeniem 10016 zalogowanym 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 następujące zdarzenie jest rejestrowane w dziennikach zdarzeń systemowych.

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 tym przypadku to zachowanie jest oczekiwane i zgodnie z projektem.

Zaimplementowany został wzorzec kodowania, w którym kod po raz pierwszy 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 ona zakończyć się powodzeniem. W tych scenariuszach jest to preferowane.

Obejście problemu

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

W razie potrzeby zaawansowani użytkownicy i specjaliści IT mogą pomijać te zdarzenia z 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:

  • param4 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ń.

Ten problem można również obejść, modyfikując uprawnienia składników DCOM, aby zapobiec zarejestrowaniu 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.