Создайте политику Azure Service Bus с несколькими утверждениями в библиотеках управления Azure для .NET - PullRequest
0 голосов
/ 26 ноября 2018

Я использую библиотеки Azure Management для .NET с Azure Service Bus.Моя цель - создать политику общего доступа с Send и Listen утверждений.Я могу сделать это на портале Azure.

Policy created in the azure portal

IServiceBusNamespace serviceBus = ...
IBlank policyDefinition = serviceBus.AuthorizationRules.Define("MySendAndListenPolicy2");

С IBlank Я могу позвонить WithListeningEnabled() или WithSendingEnabled().Оба возвращают IWithCreate, из которого я могу только создать правило (т. Е. Create() и CreateAsync(). Похоже, что нет возможности сконфигурировать Send и Listen .

Как создать политику с Send и Listen с помощью Azure Management .NET SDK?

1 Ответ

0 голосов
/ 26 ноября 2018

Я добился этого с помощью Inner объектов свободного API.

// using Microsoft.Azure.Management.Fluent;
// using Microsoft.Azure.Management.ServiceBus.Fluent;
// using Microsoft.Azure.Management.ServiceBus.Fluent.Models;

string policyName = "ListenAndSendPolicy";

// Define the claims
IList<AccessRights?> rights = new List<AccessRights?>();
rights.Add(AccessRights.Send);
rights.Add(AccessRights.Listen);

// Create the rule
SharedAccessAuthorizationRuleInner rule = await serviceBus.AuthorizationRules.Inner.CreateOrUpdateAuthorizationRuleAsync(
    serviceBus.ResourceGroupName,
    serviceBus.Name,
    policyName,
    rights);

// Get the policy
policy = await serviceBus.AuthorizationRules.GetByNameAsync(policyName);

Это успешно создало политику

enter image description here

...