场景:

我需要远程管理与请求更改的服务器位于同一域的IIS服务器(创建和销毁应用程序).我有一个应用程序池设置为在授权帐户下运行.我已经使用IIS管理器和Web池成功运行的帐户测试了远程配置,因此我知道权限是正确的.

通过代码执行此操作时出现的错误是这样的.

Type=System.Runtime.InteropServices.COMException
Source=mscorlib
Message=Retrieving the COM class factory for remote component with CLSID {2B72133B-3F5B-4602-8952-803546CE3344} from machine <SERVERNAME> Failed due to the following error: 800706ba <SERVERNAME>.

如果我查看我尝试进行身份验证的远程IIS计算机上的事件日志,我会看到以下错误.

Log Name:      Security
Source:        Microsoft-Windows-Security-Auditing
Date:          7/13/2011 5:20:22 PM
Event ID:      4625
Task Category: logon
Level:         information
Keywords:      Audit Failure
User:          N/A
Computer:      FQDN.local
Description:
An account Failed to log on.

Subject:
    Security ID:        NULL SID
    Account Name:       -
    Account Domain:     -
    logon ID:       0x0

logon Type:         3

Account For Which logon Failed:
    Security ID:        NULL SID
    Account Name:       UserName
    Account Domain:     DOMAIN

Failure information:
    Failure Reason:     An Error occured during logon.
    Status:         0xc00002ee
    Sub Status:     0x0

Process information:
    Caller Process ID:  0x0
    Caller Process Name:    -

Network information:
    Workstation Name:   -
    Source Network Address: -
    Source Port:        -

Detailed Authentication information:
    logon Process:      Kerberos
    Authentication Package: Kerberos
    Transited Services: -
    Package Name (NTLM only):   -
    Key Length:     0

This event is generated when a logon request fails. It is generated on the computer where access was attempted.

The Subject fields indicate the account on the local system which requested the logon. This is most commonly a service such as the Server service,or a local process such as Winlogon.exe or Services.exe.

The logon Type field indicates the kind of logon that was requested. The most common types are 2 (interactive) and 3 (network).

The Process information fields indicate which account and process on the system requested the logon.

The Network information fields indicate where a remote logon request originated. Workstation name is not always available and may be left blank in some cases.

The authentication information fields provide detailed information about this specific logon request.
    - Transited services indicate which intermediate services have participated in this logon request.
    - Package name indicates which sub-protocol was used among the NTLM protocols.
    - Key length indicates the length of the generated session key. This will be 0 if no session key was requested.
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-Security-Auditing" Guid="{54849625-5478-4994-A5BA-3E3B0328C30D}" />
    <EventID>4625</EventID>
    <Version>0</Version>
    <Level>0</Level>
    <Task>12544</Task>
    <Opcode>0</Opcode>
    <Keywords>0x8010000000000000</Keywords>
    <TimeCreated SystemTime="2011-07-13T21:20:22.234292500Z" />
    <EventRecordID>12046</EventRecordID>
    <Correlation />
    <Execution ProcessID="556" ThreadID="8984" />
    <Channel>Security</Channel>
    <Computer>FQDN.local</Computer>
    <Security />
  </System>
  <EventData>
    <Data Name="SubjectUserSid">S-1-0-0</Data>
    <Data Name="SubjectUserName">-</Data>
    <Data Name="SubjectDomainName">-</Data>
    <Data Name="SubjectlogonId">0x0</Data>
    <Data Name="TargetUserSid">S-1-0-0</Data>
    <Data Name="TargetUserName">UserName</Data>
    <Data Name="TargetDomainName">DOMAIN</Data>
    <Data Name="Status">0xc00002ee</Data>
    <Data Name="FailureReason">%%2304</Data>
    <Data Name="SubStatus">0x0</Data>
    <Data Name="logonType">3</Data>
    <Data Name="logonProcessName">Kerberos</Data>
    <Data Name="AuthenticationPackageName">Kerberos</Data>
    <Data Name="WorkstationName">-</Data>
    <Data Name="TransmittedServices">-</Data>
    <Data Name="LmPackageName">-</Data>
    <Data Name="KeyLength">0</Data>
    <Data Name="ProcessId">0x0</Data>
    <Data Name="ProcessName">-</Data>
    <Data Name="IpAddress">-</Data>
    <Data Name="IpPort">-</Data>
  </EventData>
</Event>

我已经做了很多搜索,并没有找到任何似乎指向正确方向的东西.我确实找到了一些谈论森林信任的事情,这可能是问题,但我不是一个AD的头衔,而且这一切都超出了我的想象.我觉得适当的权限已经到位,因为我可以使用IIS管理器正常工作,它只在使用Microsoft.Web.Administration和ServerManager.OpenRemote()时失败

UPDATE

我在两台计算机上都禁用了UAC,并将证书从目标IIS计算机添加到请求计算机上的证书存储区.仍然得到同样的错误.

这听起来很蠢 – 只是一些想法:

更新:检查用户是否具有“作为操作系统的一部分”的用户权限,请参阅标题为“Windows Server 2003注意事项”下的this page的底部.

>对我来说最有可能听起来像Kerberos约束委员会的问题.它是从Windows Server 2003引入的,目的是限制Web服务器通过Kerberos访问远程资源(因为,如果Web服务器被泄露,它会变得有点丑陋).请查看此配置服务器以获得委托信任:http://technet.microsoft.com/en-us/library/ee675779.aspx.
>另一个想法:您是否已验证您的客户端应用程序正在使用您希望它使用的凭据(可能您已经知道,但不能保证它使用应用程序池标识,特别是如果您有类似< identity你的web.config中的impersonate =“true”/>或代码中的模拟 – 请查看像http://retkomma.wordpress.com/2009/07/28/how-to-debug-http-error-401-unauthorized-in-asp-net-via-iis/一样的smth)?
>最后的调试思路:另外,你可以通过使用像WireShark这样的工具获得更低级别的Kerberos身份验证成功视图 – kerberos有时可能真的很讨厌……

.net – 使用Microsoft.Web.Administration远程管理IIS时的身份验证期间的COMException的更多相关文章

  1. 运行Node.js的IIS扩展iisnode安装配置笔记

    这篇文章主要介绍了运行Node.js的IIS扩展iisnode安装配置笔记,iisnode的扩展可以把Node.js程序托管到IIS,托管之后也意味着可以使用IIS里面的各种功能,需要的朋友可以参考下

  2. 在IIS下安装PHP扩展的方法(超简单)

    这篇文章主要介绍了在IIS下安装PHP扩展的方法,非常简单,具有参考借鉴价值,需要的朋友可以参考下

  3. IIS 7.5 asp Session超时时间设置方法

    这篇文章主要介绍了IIS 7.5中asp Session超时时间设置方法,需要的朋友可以参考一下

  4. Win10 下安装配置IIS + MySQL + nginx + php7.1.7

    本文给大家分享的是在WIN10系统中,安装配置IIS + MySQL5.7.19 + nginx1.12.1 + php7.1.7的详细教程,非常实用,有需要的小伙伴可以参考下

  5. IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置

    IIS即可以支持php也可以支持asp.相信得到不少人青睐.下面的配置文档希望可以帮助大家顺利完成php环境搭建.不正确的地方请大家指正批评.

  6. IIS服务器中部署PHP案例详解

    这篇文章主要介绍了IIS服务器中部署PHP案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下

  7. Windows2003下php5.4安装配置教程(IIS)

    这篇文章主要为大家详细介绍了在Windows2003下IIS与php5.4配置教程,感兴趣的小伙伴们可以参考一下

  8. 使用iis运行的django web服务器不支持;t运行静态css js图像文件

    嗨,我有一个djangoweb服务器项目在ISP上运行,静态文件不工作如何更改Internet信息服务和webcoig文件以使静态文件正常工作?

  9. 如何在没有目标url的情况下发布?

    我在“协会”部分没有链接。没有他,我怎么能发布项目?IIS公司与2022年相比

  10. wcf – ClientCredentialType = Windows和= Ntlm之间的差异

    FeedbackID=354236这种情况听起来类似于clientCredentialType=Windows在域帐户下运行时失败,并且在本地帐户下运行时工作).问题是建议的修复程序需要更改WCF客户端配置文件–但在我的情况下,我使用SOAP1.1与非WCF客户端.clientCredentialType=Windows使用内置的Windows身份验证,可以通过ActiveDirectory和NTLM.显然,NTLM类型将仅使用NTLM进行身份验证.我相信你已经看过了,但这里是WCF安全性的链接:http

随机推荐

  1. static – 在页面之间共享数据的最佳实践

    我想知道在UWP的页面之间发送像’selectedItem’等变量的最佳做法是什么?创建一个每个页面都知道的静态全局变量类是一个好主意吗?

  2. .net – 为Windows窗体控件提供百分比宽度/高度

    WindowsForm开发的新手,但在Web开发方面经验丰富.有没有办法为Windows窗体控件指定百分比宽度/高度,以便在用户调整窗口大小时扩展/缩小?当窗口调整大小时,可以编写代码来改变控件的宽度/高度,但我希望有更好的方法,比如在HTML/CSS中.在那儿?

  3. 使用Windows Azure查询表存储数据

    我需要使用特定帐户吗?>将应用程序部署到Azure服务后,如何查询数据?GoogleAppEngine有一个数据查看器/查询工具,Azure有类似的东西吗?>您可以看到的sqlExpressintance仅在开发结构中,并且一旦您表示没有等效,所以请小心使用它.>您可以尝试使用Linqpad查询表格.看看JamieThomson的thispost.

  4. windows – SetupDiGetClassDevs是否与文档中的设备实例ID一起使用?

    有没有更好的方法可以使用DBT_DEVICEARRIVAL事件中的数据获取设备的更多信息?您似乎必须指定DIGCF_ALLCLASSES标志以查找与给定设备实例ID匹配的所有类,或者指定ClassGuid并使用DIGCF_DEFAULT标志.这对我有用:带输出:

  5. Windows Live ID是OpenID提供商吗?

    不,WindowsLiveID不是OpenID提供商.他们使用专有协议.自从他们的“测试版”期结束以来,他们从未宣布计划继续它.

  6. 如果我在代码中进行了更改,是否需要重新安装Windows服务?

    我写了一个Windows服务并安装它.现在我对代码进行了一些更改并重新构建了解决方案.我还应该重新安装服务吗?不,只需停止它,替换文件,然后重新启动它.

  7. 带有双引号的字符串回显使用Windows批处理输出文件

    我正在尝试使用Windows批处理文件重写配置文件.我循环遍历文件的行并查找我想要用指定的新行替换的行.我有一个’函数’将行写入文件问题是%Text%是一个嵌入双引号的字符串.然后失败了.可能还有其他角色也会导致失败.如何才能使用配置文件中的所有文本?尝试将所有“在文本中替换为^”.^是转义字符,因此“将被视为常规字符你可以尝试以下方法:其他可能导致错误的字符是:

  8. .net – 将控制台应用程序转换为服务?

    我正在寻找不同的优势/劣势,将我们长期使用的控制台应用程序转换为Windows服务.我们为ActiveMQ使用了一个叫做java服务包装器的东西,我相信人们告诉我你可以用它包装任何东西.这并不是说你应该用它包装任何东西;我们遇到了这个问题.控制台应用程序是一个.NET控制台应用程序,默认情况下会将大量信息记录到控制台,尽管这是可配置的.任何推荐?我们应该在VisualStudio中将其重建为服务吗?我使用“-install”/“-uninstall”开关执行此操作.例如,seehere.

  9. windows – 捕获外部程序的STDOUT和STDERR *同时*它正在执行(Ruby)

    哦,我在Windows上:-(实际上,它比我想象的要简单,这看起来很完美:…是的,它适用于Windows!

  10. windows – 当我试图批量打印变量时,为什么我得到“Echo is on”

    我想要执行一个简单的批处理文件脚本:当我在XP中运行时,它给了我预期的输出,但是当我在Vista或Windows7中运行它时,我在尝试打印值时得到“EchoisOn”.以下是程序的输出:摆脱集合表达式中的空格.等号(=)的两侧可以并且应该没有空格BTW:我通常在@echo关闭的情况下启动所有批处理文件,并以@echo结束它们,所以我可以避免将代码与批处理文件的输出混合.它只是使您的批处理文件输出更好,更清洁.

返回
顶部