Tridion 访问群体管理API:无法打开RSA密钥容器

Tridion 访问群体管理API:无法打开RSA密钥容器,tridion,tridion-2011,Tridion,Tridion 2011,这是这个问题的后续问题: 我正在编写一个简单的示例来探索受众管理API。我所有的代码都在这里 使用系统; 使用System.Collections.Generic; 使用System.Linq; 使用系统文本; 使用Tridion.audencemanagement.API; 命名空间密码加密 { 班级计划 { 静态void Main(字符串[]参数) { StaticAddressBook importAddressBook=新的StaticAddressBook(新的UserContext(

这是这个问题的后续问题:

我正在编写一个简单的示例来探索受众管理API。我所有的代码都在这里

使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
使用Tridion.audencemanagement.API;
命名空间密码加密
{
班级计划
{
静态void Main(字符串[]参数)
{
StaticAddressBook importAddressBook=新的StaticAddressBook(新的UserContext());
}
}
}
我在CM服务器上运行此操作时遇到的错误如下:

Unhandled Exception: System.TypeInitializationException: The type initializer for 'Tridion.AudienceManagement.DomainModel.Utilities.Configuration' threw an exception. ---> Tridion.AudienceManagement.DomainModel.Exceptions.LocalizableConfiguationErrorsException: Loading of the configuration failed. ---> System.Configuration.ConfigurationErrorsException: The RSA key container could not be opened.
   at System.Configuration.RsaProtectedConfigurationProvider.ThrowBetterException(Boolean keyMustExist)
   at System.Configuration.RsaProtectedConfigurationProvider.GetCryptoServiceProvider(Boolean exportable, Boolean keyMustExist)
   at System.Configuration.RsaProtectedConfigurationProvider.Decrypt(XmlNode encryptedNode)
   at Tridion.AudienceManagement.DomainModel.Utilities.ConfigurationEncryption.TraverseAndProcessChildren(Dictionary`2 protectedConfigurationProviders, XmlNodenode)
   at Tridion.AudienceManagement.DomainModel.Utilities.ConfigurationEncryption.DecryptConfiguration(XmlDocument rawConfiguration)
   at Tridion.AudienceManagement.DomainModel.Utilities.Configuration.Reload()
   --- End of inner exception stack trace ---
   at Tridion.AudienceManagement.DomainModel.Utilities.Configuration.Reload()
   at Tridion.AudienceManagement.DomainModel.Utilities.Configuration..cctor()
   --- End of inner exception stack trace ---
   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.Utilities.Logger.WriteLine(LogLevel logLevel, String message)
   at Tridion.AudienceManagement.DomainModel.Utilities.Logger.Info(String message)
   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.DomainModel.UserContext..ctor()
   at Tridion.AudienceManagement.API.UserContext..ctor()
   at OEPasswordEncrypt.Program.Main(String[] args) in c:\users\kaht\documents\visual studio 2010\Projects\OEPasswordEncrypt\OEPasswordEncrypt\Program.cs:line 13

我已经尝试过用我自己的用户名运行aspnet_regis TridionRsaKeyContainer,但这告诉我RSA密钥容器不存在

尝试运行以下命令:


aspnet_regiis-pa“TridionRsaKeyContainer”“User_Name”

我试过了,结果是:添加ACL以访问RSA密钥容器。。。找不到RSA密钥容器。失败!我用安装的原始帐户再次尝试,现在一切正常。谢谢你,我在使用StaticAddressBook时遇到了和你一样的问题。运行上述命令后,我已注册管理员和mtsuser,但错误未得到解决。我的代码是页面加载函数。我需要为此添加任何web.config条目吗?谢谢