AzureKeyVaultResourceExtensions.WithRoleAssignments<T> Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Assigns the specified roles to the given resource, granting it the necessary permissions on the target Azure Key Vault resource. 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.AzureKeyVaultResource> target, params Azure.Provisioning.KeyVault.KeyVaultBuiltInRole[] 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.AzureKeyVaultResource> * Azure.Provisioning.KeyVault.KeyVaultBuiltInRole[] -> 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 AzureKeyVaultResource), ParamArray roles As KeyVaultBuiltInRole()) As IResourceBuilder(Of T)
Type Parameters
- T
Parameters
- builder
- IResourceBuilder<T>
The resource to which the specified roles will be assigned.
The target Azure Key Vault resource.
- roles
- KeyVaultBuiltInRole[]
The built-in Key Vault roles to be assigned.
Returns
The updated IResourceBuilder<T> with the applied role assignments.
Examples
Assigns the KeyVaultReader role to the 'Projects.Api' project.
var builder = DistributedApplication.CreateBuilder(args);
var vault = builder.AddAzureKeyVault("vault");
var api = builder.AddProject<Projects.Api>("api")
.WithRoleAssignments(vault, KeyVaultBuiltInRole.KeyVaultReader)
.WithReference(vault);
Remarks
var builder = DistributedApplication.CreateBuilder(args);
var vault = builder.AddAzureKeyVault("vault");
var api = builder.AddProject<Projects.Api>("api")
.WithRoleAssignments(vault, KeyVaultBuiltInRole.KeyVaultReader)
.WithReference(vault);