azurermSignalrSharedPrivateLinkResource
Manages the Shared Private Link Resource for a Signalr service.
Example Usage
/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as azurerm from "./.gen/providers/azurerm";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: azurerm.
For a more precise conversion please use the --provider flag in convert.*/
const azurermResourceGroupExample = new azurerm.resourceGroup.ResourceGroup(
this,
"example",
{
location: "east us",
name: "terraform-signalr",
}
);
new azurerm.signalrService.SignalrService(this, "test", {
location: "${azurerm_resource_group.test.location}",
name: "tfex-signalr",
resource_group_name: "${azurerm_resource_group.test.name}",
sku: [
{
capacity: 1,
name: "Standard_S1",
},
],
});
const dataAzurermClientConfigCurrent =
new azurerm.dataAzurermClientConfig.DataAzurermClientConfig(
this,
"current",
{}
);
const azurermKeyVaultExample = new azurerm.keyVault.KeyVault(
this,
"example_3",
{
access_policy: [
{
certificate_permissions: ["ManageContacts"],
key_permissions: ["Create"],
object_id: dataAzurermClientConfigCurrent.objectId,
secret_permissions: ["Set"],
tenant_id: dataAzurermClientConfigCurrent.tenantId,
},
],
location: azurermResourceGroupExample.location,
name: "examplekeyvault",
resource_group_name: azurermResourceGroupExample.name,
sku_name: "standard",
soft_delete_retention_days: 7,
tenant_id: dataAzurermClientConfigCurrent.tenantId,
}
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermKeyVaultExample.overrideLogicalId("example");
const azurermSignalrSharedPrivateLinkResourceExample =
new azurerm.signalrSharedPrivateLinkResource.SignalrSharedPrivateLinkResource(
this,
"example_4",
{
name: "tfex-signalr-splr",
signalr_service_id: "${azurerm_signalr_service.example.id}",
sub_resource_name: "vault",
target_resource_id: azurermKeyVaultExample.id,
}
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermSignalrSharedPrivateLinkResourceExample.overrideLogicalId("example");
Argument Reference
The following arguments are supported:
-
name
- (Required) The name of the Signalr Shared Private Link Resource. Changing this forces a new resource to be created. -
signalrServiceId
- (Required) The id of the Signalr Service. Changing this forces a new resource to be created. -
subResourceName
- (Required) The sub resource name which the Signalr Private Endpoint can connect to. Possible values aresites
,vault
. Changing this forces a new resource to be created. -
targetResourceId
- (Required) The ID of the Shared Private Link Enabled Remote Resource which this Signalr Private Endpoint should be connected to. Changing this forces a new resource to be created.
-> NOTE: The subResourceName
should match with the type of the targetResourceId
that's being specified.
requestMessage
- (Optional) The request message for requesting approval of the Shared Private Link Enabled Remote Resource.
Attributes Reference
The following attributes are exported:
-
id
- The ID of the Signalr Shared Private Link resource. -
status
- The status of a private endpoint connection. Possible values arepending
,approved
,rejected
ordisconnected
.
Timeouts
The timeouts
block allows you to specify timeouts for certain actions:
create
- (Defaults to 30 minutes) Used when creating the Signalr Shared Private Link Resource.update
- (Defaults to 30 minutes) Used when updating the Signalr Shared Private Link Resource.read
- (Defaults to 5 minutes) Used when retrieving the Signalr Shared Private Link Resource.delete
- (Defaults to 30 minutes) Used when deleting the Signalr Shared Private Link Resource.
Import
Signalr Shared Private Link Resource can be imported using the resourceId
, e.g.