gpt4 book ai didi

asp.net - ASP站点可与Win7 IE 11一起使用,但不能与Win10 IE11一起使用

转载 作者:可可西里 更新时间:2023-11-01 09:36:28 26 4
gpt4 key购买 nike

所以我们有这个旧的ASP网站(不会死)。

它当前位于win2k12上,并由spn和kerberos代理设置。它使用一个Com。对象,该对象运行一个.vbs,它与 Activity 目录进行了大量交谈。

我们将开始推出Windows 10实现。

在我们的开发环境中,它可以与win7/IE11和win10/IE11一起使用
在我们的生产环境中,win7/IE11已经起作用(并且仍然起作用),但是win10/IE11却不起作用。

一些错误消息是

Active Directory error '80040e37'
The specified directory service attribute or value does not exist.



Error getting attribute max range
Attribute: [givenName]
Error description: [-2147463153] The attempted action violates the DS schema rules.



通常,这表明该网站的配置不正确,但是对于win7上的每个人来说,它都可以正常工作。

因此,这将使手指指向win10实现。

Windows 10中的什么会导致此问题? (也许是特定的配置错误的gpo?)我很困惑。

更新1-。

GPO似乎没有问题。不管是win7还是win10,它都是相同的gpo设置(不通过wmi进行过滤)。

因此,该站点可以在Windows8/ie11中运行,也可以在win7上的Chrome中运行(经过一些调整以启用kerberos之后)

我设法创建了一个导致该问题的测试页面。

Dim oSysInfo 
dim user
'on error resume next
'Get the Current Users information. This information is just the currently logged on user
' Set oSysInfo = Server.CreateObject("ADSystemInfo")
'Get Current User Object
sURL= "LDAP://AUsersDistinguishedName"
response.write(sURL & "<br />")
on error resume next
Set user = GetObject(sURL)

pAttribute = "givenName"
'response.write(user.get(pAttribute))

Dim cl, sc, pr, pr2, pAttribute
Set cl = GetObject(user.Schema)

'Test(user)
Set sc = GetObject(cl.Parent)

Set pr = sc.GetObject("Property", pAttribute)

response.write(pr.MaxRange)

Set cl = Nothing
Set sc = Nothing
Set pr = Nothing

'-2147463155: Not found in directory cache, that means the MaxRange property is empty or not set, so there is no error
if err.number <> 0 and err.number <> -2147463155 then
Response.Write "<br>Error description: [" & err.number & "] " & err.Description
End If

-更新2。

我将添加有关IIS服务器的更多信息。
  • 服务器有2个spn,从URL指向服务器
  • 服务器已设置为委派。
  • 应用程序池在特定的域帐户上运行。设置为32位。
  • Windows身份验证是唯一启用的身份验证。 (扩展保护已关闭,并且启用了内核模式身份验证)。协商是第一个启用的提供程序。 Ntlm是第二位。

  • 更新3:
    我让Microsoft参与了我的msdn事件之一。
    当我们进行网络监视跟踪时,kerberos似乎存在问题。

    工作-开发与Windows10
    票证:领域:ourRealm,名称:ldap/DomainControllerFQN

    工作-Windows7产品
    票证:领域:ourRealm,名称:ldap/DomainControllerFQN

    无法正常使用-Windows 10产品
    票证:领域:ourRealm,名称:运行网站的帐户名称。
    所有请求都属于NLMP(ntlm)且未使用kerberos

    至于spn,这两种环境之间的相同。当我们执行setspn -l Web服务器时,这是它们的一个子集。
  • http/WebsiteFQN-3年前
  • 部署到win2k12时,我们添加了此功能
  • http/websiteName-我们在3年前部署到win2k12时添加了此功能
  • TERMSRV/服务器名称
  • TERMSRV/WebserverFqn
  • WSMAN/WebServerFqn
  • WSMAN/WebServer
  • RestrictedKrbHost/WebServer
  • HOST/WebServer
  • RestrictedKrbHost/WebServerFqn
  • HOST/WebServerFqn

  • 在Web服务器的“委派”选项卡上,将其设置为
    "Trust this computer for delegation to any service (Kerberos only)"

    Delegation Tab for the webserver

    这是“IIS身份验证”部分的屏幕截图

    IIS Authentication Screen

    IIS Advance Settings

    IIS Auth Provider section

    -更新4

    这是两种环境下访问网站后Klist信息的输出(我之前在工作站上进行过klist清除)

    Windows 10-开发-工作
    Cached Tickets: (4)

    #0> Client: MyUser @ DomainFqn
    Server: krbtgt/DomainFqn @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x60a00000 -> forwardable forwarded renewable pre_authent
    Start Time: 11/28/2017 10:27:10 (local)
    End Time: 11/28/2017 20:27:10 (local)
    Renew Time: 12/5/2017 10:27:10 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96
    Cache Flags: 0x2 -> DELEGATION
    Kdc Called: DomainControllerFqn

    #1> Client: MyUser @ DomainFqn
    Server: krbtgt/DomainFqn @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x40e00000 -> forwardable renewable initial pre_authent
    Start Time: 11/28/2017 10:27:10 (local)
    End Time: 11/28/2017 20:27:10 (local)
    Renew Time: 12/5/2017 10:27:10 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96
    Cache Flags: 0x1 -> PRIMARY
    Kdc Called: DomainControllerFqn

    #2> Client: MyUser @ DomainFqn
    Server: cifs/resourceServer @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x40a00000 -> forwardable renewable pre_authent
    Start Time: 11/28/2017 10:27:11 (local)
    End Time: 11/28/2017 20:27:10 (local)
    Renew Time: 12/5/2017 10:27:10 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96
    Cache Flags: 0
    Kdc Called: DomainControllerFqn

    #3> Client: admlareaua @ DomainFqn
    Server: HTTP/webserverFQN @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x40a40000 -> forwardable renewable pre_authent ok_as_delegate
    Start Time: 11/28/2017 10:27:10 (local)
    End Time: 11/28/2017 20:27:10 (local)
    Renew Time: 12/5/2017 10:27:10 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96
    Cache Flags: 0
    Kdc Called: DomainControllerFqn

    Windows 10-产品-不起作用
    #0> Client: MyUser @ DomainFqn
    Server: krbtgt/DomainFqn @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x40e00000 -> forwardable renewable initial pre_authent
    Start Time: 11/28/2017 9:14:10 (local)
    End Time: 11/28/2017 19:14:10 (local)
    Renew Time: 12/5/2017 9:14:10 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96
    Cache Flags: 0x1 -> PRIMARY
    Kdc Called: DomainControllerFqn

    #1> Client: admhqlareaua @ DomainFqn
    Server: HTTP/WebServerFQN @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x40a40000 -> forwardable renewable pre_authent ok_as_delegate
    Start Time: 11/28/2017 9:14:10 (local)
    End Time: 11/28/2017 19:14:10 (local)
    Renew Time: 12/5/2017 9:14:10 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96
    Cache Flags: 0
    Kdc Called: DomainControllerFqn

    Windows 7-产品-工作
    Cached Tickets: (3)

    #0> Client: MyUser @ DomainFqn
    Server: krbtgt/DomainFqn @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x60a00000 -> forwardable forwarded renewable pre_authent
    Start Time: 11/28/2017 9:17:24 (local)
    End Time: 11/28/2017 19:17:24 (local)
    Renew Time: 12/5/2017 9:17:24 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96


    #1> Client: MyUser @ DomainFqn
    Server: krbtgt/DomainFqn @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x40e00000 -> forwardable renewable initial pre_authent
    Start Time: 11/28/2017 9:17:24 (local)
    End Time: 11/28/2017 19:17:24 (local)
    Renew Time: 12/5/2017 9:17:24 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96


    #2> Client: MyUser @ DomainFqn
    Server: HTTP/WebServerFQN @ DomainFqn
    KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
    Ticket Flags 0x40a40000 -> forwardable renewable pre_authent ok_as_delegate
    Start Time: 11/28/2017 9:17:24 (local)
    End Time: 11/28/2017 19:17:24 (local)
    Renew Time: 12/5/2017 9:17:24 (local)
    Session Key Type: AES-256-CTS-HMAC-SHA1-96

    更新5-

    因此,为了运行,我创建了一个快速的mvc站点并将其作为非工作站点的子站点。

    我做了以下 Controller 。
    public JsonResult GetList2()
    {
    var st = new List<string>();

    var currSchema = ActiveDirectorySchema.GetCurrentSchema();
    st.Add(currSchema.Name);

    foreach (ActiveDirectorySchemaProperty property in currSchema.FindAllProperties())
    {
    st.Add($"{property.Name} - {property.RangeUpper}");
    }

    return Json(st, JsonRequestBehavior.AllowGet);
    }

    它似乎工作正常,并提供了我想要的最大长度值。因此,我认为我将就此问题进行讨论,并继续将其重新写入应用程序的C#。

    更新-6(6个月后)。

    事实证明,此问题与凭据保护有关。 (另一个旧应用程序开始出现相同类型的问题)

    我们关闭了注册表中的凭证保护,该应用程序运行正常。

    https://docs.microsoft.com/en-us/windows/security/identity-protection/credential-guard/credential-guard-considerations

    (来自链接)

    Kerberos Considerations

    When you enable Windows Defender Credential Guard, you can no longer use Kerberos unconstrained delegation or DES encryption. Unconstrained delegation could allow attackers to extract Kerberos keys from the isolated LSA process. Use constrained or resource-based Kerberos delegation instead



    因此,我必须研究一下我认为受约束的或基于资源的Kerberos

    最佳答案

    因此,凭证保护似乎是罪魁祸首。我打开了另一个问题,尝试指出该问题-Switching application to use Constraint based kerberos

    关于asp.net - ASP站点可与Win7 IE 11一起使用,但不能与Win10 IE11一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46455799/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com