ASP.NET_2.0.50727.210 shown as unknown in IIS Manager even after the filter gets loaded in the w3wp.exe process

PROBLEM

ASP.NET_2.0.50727.210 shown as unknown in IIS Manager even after the filter gets loaded in the w3wp.exe process.

CAUSE

Certain Metabase ACLs were missing for the user under which the AppPool runs. Typically, after loading the filter, the Metabase is modified; some new properties like FilterState, NotifyOrderLow, etc will be added. FilterState tells whether the Filter is loaded or not. If NotifyOrderLow is set to true, then the order of Filter is LOW.

Following are the Metabase properties present for the Filter even after the Filter got loaded in the w3wp.exe process.

C:\Inetpub\AdminScripts> cscript.exe adsutil.vbs enum /w3svc/Filters/ASP.NET_2.0.50727.210

Microsoft (R) Windows Script Host Version 5.6

Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

KeyType : (STRING) "IIsFilter"

FilterPath : (STRING) "C:\WINNT\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll"

FilterDescription : (STRING) "ASP.NET Cookieless Session Filter"

FilterEnableCache : (BOOLEAN) True

Typically, the properties should look like below after getting loaded into w3wp.exe:

C:\Inetpub\AdminScripts> cscript.exe adsutil.vbs enum /w3svc/Filters/ASP.NET_2.0.50727.210

Microsoft (R) Windows Script Host Version 5.6

Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

KeyType : (STRING) "IIsFilter"

FilterPath : (STRING) "C:\WINNT\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll"

FilterDescription : (STRING) "ASP.NET Cookieless Session Filter"

FilterFlags : (INTEGER) 151552

NotifySecurePort : (BOOLEAN) False

NotifyNonSecurePort : (BOOLEAN) False

NotifyReadRawData : (BOOLEAN) False

NotifyPreProcHeaders : (BOOLEAN) True

NotifyAuthentication : (BOOLEAN) False

NotifyUrlMap : (BOOLEAN) True

NotifyAccessDenied : (BOOLEAN) False

NotifySendResponse : (BOOLEAN) False

NotifySendRawData : (BOOLEAN) False

NotifyLog : (BOOLEAN) False

NotifyEndOfRequest : (BOOLEAN) False

NotifyEndOfNetSession : (BOOLEAN) False

NotifyOrderHigh : (BOOLEAN) False

NotifyOrderMedium : (BOOLEAN) False

NotifyOrderLow : (BOOLEAN) True

NotifyAuthComplete : (BOOLEAN) False

FilterState : (INTEGER) 1

FilterEnableCache : (BOOLEAN) True

Win32Error : (INTEGER) 0

RESOLUTION

Following is the default permission list for the IIS://Localhost/W3SVC/Filters key in Metabase:

C:\Inetpub\AdminScripts> Metaacl.vbs IIS://Localhost/W3SVC/Filters

NT AUTHORITY\LOCAL SERVICE

    Access: RW UE

NT AUTHORITY\NETWORK SERVICE

    Access: RW UE

SERVERNAME\IIS_WPG

    Access: RW UE

BUILTIN\Administrators

    Access: RWSUED

You can use MetaAcl.vbs file to modify permissions on the Metabase. You can download MetaAcl from https://support.microsoft.com/?id=267904