Tridion.AudienceManagement.API在初始化期间引发异常
我创建了一个控制台应用程序,它在Tridion.AudienceManagement.API在初始化期间引发异常,tridion,tridion-2011,Tridion,Tridion 2011,我创建了一个控制台应用程序,它在Tridion.audencemanagement.APIAPI上执行简单的操作。当我启动应用程序时,它做的第一件事就是引用UserContext.Current,此时我得到以下异常 The type initializer for 'Tridion.AudienceManagement.DomainModel.Utilities.Configuration' threw an exception. at Tridion.AudienceManagement.Do
Tridion.audencemanagement.API
API上执行简单的操作。当我启动应用程序时,它做的第一件事就是引用UserContext.Current
,此时我得到以下异常
The type initializer for 'Tridion.AudienceManagement.DomainModel.Utilities.Configuration' threw an exception.
at Tridion.AudienceManagement.DomainModel.Utilities.Configuration.get_LogFolder()
at Tridion.AudienceManagement.DomainModel.Utilities.Logger.AssertValidLogFolder()
at Tridion.AudienceManagement.DomainModel.Utilities.Logger.WriteLine(LogLevel logLevel, String message, Object[] objects)
at Tridion.AudienceManagement.DomainModel.ServiceClient.ContentManagerClient.LogBindingInfo(Exception ex)
at Tridion.AudienceManagement.DomainModel.ServiceClient.ContentManagerClient.GetConfiguredCoreService()
at Tridion.AudienceManagement.DomainModel.ServiceClient.ContentManagerClient.GetClient(UserContext userContext, UserData& userData)
at Tridion.AudienceManagement.DomainModel.ServiceClient.ContentManagerClient.LoadCurrentUser(UserContext userContext, String userDataXml)
at Tridion.AudienceManagement.DomainModel.UserContext..ctor(String trusteeName)
at Tridion.AudienceManagement.API.UserContext..ctor()
at Tridion.AudienceManagement.API.UserContext.get_Current()
我已确认已安装Audience Manager并正在服务器上工作
通过从以MTS用户身份登录的shell运行该程序,我们可以避免此问题。起初,我们认为问题在于日志文件夹上的文件系统权限,但是,即使授予完全控制权也无济于事
当比较作为两个用户运行代码的procmon输出时,我们可以看到失败的用户由于在C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys中创建文件而被拒绝访问-文件名是一长串随机字符。MtsUser未看到此拒绝访问 似乎不允许运行console应用程序的用户读取用于加密配置的加密密钥 您有几个选项可以解决此问题:
aspnet\u regiis-pa“TridionRsaProtectedConfigurationProvider”“domain\username”
- (SDL LiveContent)
- (MSDN)