首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GroupPrincipal.FindByIdentity未知COM异常

GroupPrincipal.FindByIdentity未知COM异常
EN

Stack Overflow用户
提问于 2012-03-13 15:31:47
回答 2查看 1.5K关注 0票数 2

将此代码部署到身份为应用程序池用户的web应用程序时,下面的代码会引发未知的COM异常。调用FindByIdentity方法时会发生异常。

System.Runtime.InteropServices.COMException:未知错误(0x8000500c)

代码语言:javascript
复制
using (PrincipalContext prinCon = new PrincipalContext(ContextType.Domain))
{
     GroupPrincipal groupPrin = GroupPrincipal.FindByIdentity(prinCon, name);
}

如果我将应用程序池标识更改为域用户,则此问题将得到解决。这让我开始相信这是一个许可/安全问题。然而,这个错误并不会发生在所有的服务器上,只是一些服务器。此外,重新启动将修复此问题。

那么,我的问题是为什么要重新启动服务器来修复这个问题呢?有什么办法可以让这件事不重新开始吗?

我已经做了相当多的谷歌搜索,没有遇到任何人有相同的问题,一些类似的许可问题,但没有一个帮助解决我的问题。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2015-10-16 15:44:51

更改应用程序池帐户对我是有效的。它是ApplicationPoolIdentity用户,但是在我更改为Network之后,这个错误消失了,AD代码运行良好。我希望这能帮到你。

票数 1
EN

Stack Overflow用户

发布于 2012-09-04 22:45:27

您没有指定标识类型,但是您要给它提供一个字符串。也许它不知道如何搜索字符串。例如,它可能假设字符串是guid,然后尝试解析它,然后失败。

试一试如下:

代码语言:javascript
复制
var groupPrin = GroupPrincipal.FindByIdentity(prinCon, IdentityType.Name , name);

另外,尝试使用一些绝对具有执行这些操作(例如管理或服务帐户)权限的凭据来设置您的PrincipalContext。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9687113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档