我有一些运行IIS 7.5的配置相同的Windows 2008 Web服务器,其中一个服务器在加载用户配置文件"方面没有按预期运行。我得到一个黄色的死亡屏幕,上面写着"用户的个人资料是一个临时的个人资料。" (请参阅下面有关错误的更多信息)。
在我的大多数网络服务器上,修复方法是切换"加载用户个人资料"对于#34;高级设置"下的应用程序池,从False变为True。但是,在一个方框中,这不起作用。所有Web服务器都将应用程序池设置为作为我们网络内部的标识运行,例如" MyCompany.local \ TheAppPoolUser&#34 ;.该用户没有登录权限。在除了破坏的Web服务器之外的所有Web服务器上,C:\ Users \ TheAppPoolUser上都有一个目录。损坏的服务器上不存在此类目录。我试过回收应用池,但仍然没有目录。
Windows / IIS何时决定创建目录?是否有可能强制创作?是否可以手动创建它?我不知道如何/何时在其他机器上创建目录。
以下是死亡错误黄色屏幕上的详细信息:
用户的个人资料是临时个人资料。
描述:执行期间发生了未处理的异常 当前的网络请求。请查看堆栈跟踪了解更多信息 有关错误的信息以及它在代码中的起源。
异常详细信息: System.Security.Cryptography.CryptographicException:的配置文件 用户是临时个人资料。
来源错误:
执行期间生成了未处理的异常 当前的网络请求。有关的来源和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。
堆栈追踪:
[CryptographicException:用户的个人资料是暂时的 轮廓。 ]
RabbitMQ.Client.EndpointResolverExtensions.SelectOne(IEndpointResolver 旋转变压器,Func`2选择器)+294
RabbitMQ.Client.ConnectionFactory.CreateConnection(IEndpointResolver endpointResolver,String clientProvidedName)+178
答案 0 :(得分:1)
简短的故事 - 你不能对这个问题做任何简单的事情。你只能尝试解决它。
更长的故事 - 临时个人资料有时会被创建随机,因为各种不那么容易理解的原因。有多个引用,例如
http://paulstovell.com/blog/x509certificate2
然而,它有时也会随机发生。也许注册表存在一个问题,导致无法创建配置文件目录。也许有人对团体政策有点过分热心。我有各种各样的错误报告。一种选择是尝试停止在该帐户下运行的任何服务(包括应用程序池),然后以用户身份以交互方式登录到计算机以强制创建配置文件。然后注销,然后重新启动服务。
不幸的是,加密子系统的某些部分需要创建用户配置文件,并且此限制来自.NET加密子系统引用的旧DPAPI。
我的个人斗争已在我的博客条目
中描述http://www.wiktorzychla.com/2016/08/signedxmlchecksignature-and-dreadful.html
它与您的情况完全相同,但最常见的情况略有不同(对我来说,这是加密子系统验证XML签名的方式)。
无论如何,有两种可能的解决方法:
您可以以交互模式登录该特定框作为应用程序池标识 - 这会强制操作系统创建配置文件。如果问题仍未解决,您可以尝试删除配置文件(尽管问题是配置文件可能处于 limbo 状态,当您尝试以该用户身份登录时无法创建该配置文件在该计算机上的配置文件列表中不可见,因此您无法将其删除)
您可以解决导致问题的API - 这在我的情况下是可行的但不适合您,因为问题的根源是您无法轻易修复的RabbitMQ客户端库,可能是