AzureServiceBusExtensions.WithRoleAssignments<T> Method

Definition

Assigns the specified roles to the given resource, granting it the necessary permissions on the target Azure Service Bus namespace. This replaces the default role assignments for the resource.

public static Aspire.Hosting.ApplicationModel.IResourceBuilder<T> WithRoleAssignments<T>(this Aspire.Hosting.ApplicationModel.IResourceBuilder<T> builder, Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureServiceBusResource> target, params Azure.Provisioning.ServiceBus.ServiceBusBuiltInRole[] roles) where T : Aspire.Hosting.ApplicationModel.IResource;
static member WithRoleAssignments : Aspire.Hosting.ApplicationModel.IResourceBuilder<'T (requires 'T :> Aspire.Hosting.ApplicationModel.IResource)> * Aspire.Hosting.ApplicationModel.IResourceBuilder<Aspire.Hosting.Azure.AzureServiceBusResource> * Azure.Provisioning.ServiceBus.ServiceBusBuiltInRole[] -> Aspire.Hosting.ApplicationModel.IResourceBuilder<'T (requires 'T :> Aspire.Hosting.ApplicationModel.IResource)> (requires 'T :> Aspire.Hosting.ApplicationModel.IResource)
<Extension()>
Public Function WithRoleAssignments(Of T As IResource) (builder As IResourceBuilder(Of T), target As IResourceBuilder(Of AzureServiceBusResource), ParamArray roles As ServiceBusBuiltInRole()) As IResourceBuilder(Of T)

Type Parameters

T

Parameters

builder
IResourceBuilder<T>

The resource to which the specified roles will be assigned.

target
IResourceBuilder<AzureServiceBusResource>

The target Azure Service Bus namespace.

roles
ServiceBusBuiltInRole[]

The built-in Service Bus roles to be assigned.

Returns

The updated IResourceBuilder<T> with the applied role assignments.

Examples

Assigns the AzureServiceBusDataSender role to the 'Projects.Api' project.

var builder = DistributedApplication.CreateBuilder(args);

var sb = builder.AddAzureServiceBus("bus");

var api = builder.AddProject<Projects.Api>("api")
  .WithRoleAssignments(sb, ServiceBusBuiltInRole.AzureServiceBusDataSender)
  .WithReference(sb);

Remarks

Assigns the AzureServiceBusDataSender role to the 'Projects.Api' project.
var builder = DistributedApplication.CreateBuilder(args);

var sb = builder.AddAzureServiceBus("bus");

var api = builder.AddProject<Projects.Api>("api")
  .WithRoleAssignments(sb, ServiceBusBuiltInRole.AzureServiceBusDataSender)
  .WithReference(sb);

Applies to