当我使用时:
CloudIdentity identity =
new CloudIdentity()
{
Username = "files.user",
APIKey = "pswd",
};
var _storage = new CloudFilesProvider(identity);
身份验证失败。我认为问题是我有一个LON帐户,默认的身份验证目标是美国云实例。在openstack.net wiki上,我看到了下面的例子。
IIdentityProvider identityProvider = new CloudIdentityProvider();
var userAccess = identityProvider.Authenticate(new RackspaceCloudIdentity{
Username = "MyUserName",
Password = "MyPassword",
CloudInstance =CloudInstance.UK});
在最新版本的库中,RackspaceCloudIdentity具有Domain参数而不是CloudInstance。我想这个例子已经过时了。
如何使用Domain参数?或者有更好的方法来验证LON云实例吗?
答案 0 :(得分:1)
Rackspace现在使用全局身份验证,因此美国和英国帐户之间的唯一区别是您传入的凭据。如果身份验证失败,则可能出现以下问题之一:
CloudIdentity
实例的用户名和/或API密钥不正确。答案 1 :(得分:0)
我一直看到同样的错误。我相信它与通过UI创建的子帐户有关。它们没有正确设置DefaultRegion(它为空)。
解决此问题的唯一方法是使用父帐户,或者在每次API调用时手动设置区域。