Servicebus 为什么我在使用服务总线MessagingFactory时出现未经授权的访问异常?
我已通过证书配置授权。当我使用NamespaceManager获取订阅时效果很好,但当我尝试从MessagingFactory执行任何方法时,我收到System.UnauthorizedAccessExceptionServicebus 为什么我在使用服务总线MessagingFactory时出现未经授权的访问异常?,servicebus,Servicebus,我已通过证书配置授权。当我使用NamespaceManager获取订阅时效果很好,但当我尝试从MessagingFactory执行任何方法时,我收到System.UnauthorizedAccessException string connectionString = CloudConfigurationManager.GetSetting("Microsoft.ServiceBus.ConnectionString"); var namespaceManager = NamespaceMan
string connectionString = CloudConfigurationManager.GetSetting("Microsoft.ServiceBus.ConnectionString");
var namespaceManager = NamespaceManager.CreateFromConnectionString(connectionString);
SubscriptionDescription subscriptionDescription = namespaceManager.GetSubscription("testTopic", "testSubscription"); // executed properly
var messagingFactory = MessagingFactory.CreateFromConnectionString(connectionString);
var exist = namespaceManager.TopicExists("TestTopic"); // throws exception
堆栈跟踪:
System.UnauthorizedAccessException was unhandled
HResult=-2147024891
Message=The remote server returned an error: (401) Unauthorized. Authorization failed for specified action: Manage..TrackingId:d8648c5a-5185-41c8-b787-72332403b7d9_*******,TimeStamp:2014-07-14 08:34:22
Source=Microsoft.ServiceBus
怎么了?要使用NamespaceManager,您必须在服务总线命名空间中的ManageUsers中。要将用户添加到现有名称空间,您可以使用ps,您必须位于Service Bus名称空间中的ManageUsers列表中,或者具有授权规则,使您能够对要获取订阅的主题进行管理