# RadiusCloudProviderExtensions

- Kind: `class`
- Package: [Aspire.Hosting.Radius](/reference/api/csharp/aspire.hosting.radius.md)
- Version: `13.5.3-preview.1.26425.3`
- Namespace: `Aspire.Hosting`
- Target framework: `net10.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/b5f143315ffb6968ea939a9978797a5b20e4c688/src/Aspire.Hosting.Radius/CloudProviders/RadiusCloudProviderExtensions.cs)

Cloud-provider configuration entry points for [RadiusEnvironmentResource](/reference/api/csharp/aspire.hosting.radius/radiusenvironmentresource.md). These extensions attach a `Annotations.RadiusCloudProvidersAnnotation` to the environment that the publisher consumes to emit `providers.azure` / `providers.aws` scope blocks and to schedule `rad credential register` invocations during deploy.

## Definition

```csharp
namespace Aspire.Hosting;

public static class RadiusCloudProviderExtensions
{
    // ...
}
```

## Methods

- [WithAwsProvider(IResourceBuilder<RadiusEnvironmentResource>, string, string, Action<IAwsRadiusProviderBuilder>)](/reference/api/csharp/aspire.hosting.radius/radiuscloudproviderextensions/methods.md#withawsprovider-iresourcebuilder-radiusenvironmentresource-string-string-action-iawsradiusproviderbuilder) : `IResourceBuilder<RadiusEnvironmentResource>` `extension` `experimental` `ats ignored` -- Attaches an AWS cloud provider to the Radius environment. The `configure` callback selects exactly one credential mode (Access Key or IRSA); omitting a selection is an error.
- [WithAzureProvider(IResourceBuilder<RadiusEnvironmentResource>, string, string, Action<IAzureRadiusProviderBuilder>)](/reference/api/csharp/aspire.hosting.radius/radiuscloudproviderextensions/methods.md#withazureprovider-iresourcebuilder-radiusenvironmentresource-string-string-action-iazureradiusproviderbuilder) : `IResourceBuilder<RadiusEnvironmentResource>` `extension` `experimental` `ats ignored` -- Attaches an Azure cloud provider to the Radius environment. The `configure` callback selects exactly one credential mode (Service Principal or Workload Identity); omitting a selection is an error.
