Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Bicep resource definition
The signalR/sharedPrivateLinkResources resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.SignalRService/signalR/sharedPrivateLinkResources resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.SignalRService/signalR/sharedPrivateLinkResources@2025-01-01-preview' = {
parent: resourceSymbolicName
name: 'string'
properties: {
fqdns: [
'string'
]
groupId: 'string'
privateLinkResourceId: 'string'
requestMessage: 'string'
}
}
Property Values
Microsoft.SignalRService/signalR/sharedPrivateLinkResources
| Name | Description | Value |
|---|---|---|
| name | The resource name | string Constraints: Min length = 3 Max length = 63 Pattern = ^[a-zA-Z][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$ (required) |
| parent | In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource. For more information, see Child resource outside parent resource. |
Symbolic name for resource of type: signalR |
| properties | Describes the properties of an existing Shared Private Link Resource | SharedPrivateLinkResourceProperties |
SharedPrivateLinkResourceProperties
| Name | Description | Value |
|---|---|---|
| fqdns | A list of FQDNs for third party private link service | string[] |
| groupId | The group id from the provider of resource the shared private link resource is for | string (required) |
| privateLinkResourceId | The resource id of the resource the shared private link resource is for | string (required) |
| requestMessage | The request message for requesting approval of the shared private link resource | string |
Usage Examples
Bicep Samples
A basic example of deploying Shared Private Link Resource for a Signalr service.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource signalR 'Microsoft.SignalRService/signalR@2023-02-01' = {
name: resourceName
location: location
properties: {
cors: {}
disableAadAuth: false
disableLocalAuth: false
features: [
{
flag: 'ServiceMode'
value: 'Default'
}
{
flag: 'EnableConnectivityLogs'
value: 'False'
}
{
flag: 'EnableMessagingLogs'
value: 'False'
}
{
flag: 'EnableLiveTrace'
value: 'False'
}
]
publicNetworkAccess: 'Enabled'
resourceLogConfiguration: {
categories: [
{
enabled: 'false'
name: 'MessagingLogs'
}
{
enabled: 'false'
name: 'ConnectivityLogs'
}
{
enabled: 'false'
name: 'HttpRequestLogs'
}
]
}
serverless: {
connectionTimeoutInSeconds: 30
}
tls: {
clientCertEnabled: false
}
upstream: {
templates: []
}
}
sku: {
capacity: 1
name: 'Standard_S1'
}
}
resource vault 'Microsoft.KeyVault/vaults@2021-10-01' = {
name: resourceName
location: location
properties: {
accessPolicies: [
{
objectId: deployer().objectId
permissions: {
certificates: [
'ManageContacts'
]
keys: [
'Create'
]
secrets: [
'Set'
]
storage: []
}
tenantId: deployer().tenantId
}
]
createMode: 'default'
enableRbacAuthorization: false
enableSoftDelete: true
enabledForDeployment: false
enabledForDiskEncryption: false
enabledForTemplateDeployment: false
publicNetworkAccess: 'Enabled'
sku: {
family: 'A'
name: 'standard'
}
softDeleteRetentionInDays: 7
tenantId: deployer().tenantId
}
}
resource sharedPrivateLinkResource 'Microsoft.SignalRService/signalR/sharedPrivateLinkResources@2023-02-01' = {
parent: signalR
name: resourceName
properties: {
groupId: 'vault'
privateLinkResourceId: vault.id
requestMessage: 'please approve'
}
}
ARM template resource definition
The signalR/sharedPrivateLinkResources resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.SignalRService/signalR/sharedPrivateLinkResources resource, add the following JSON to your template.
{
"type": "Microsoft.SignalRService/signalR/sharedPrivateLinkResources",
"apiVersion": "2025-01-01-preview",
"name": "string",
"properties": {
"fqdns": [ "string" ],
"groupId": "string",
"privateLinkResourceId": "string",
"requestMessage": "string"
}
}
Property Values
Microsoft.SignalRService/signalR/sharedPrivateLinkResources
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2025-01-01-preview' |
| name | The resource name | string Constraints: Min length = 3 Max length = 63 Pattern = ^[a-zA-Z][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$ (required) |
| properties | Describes the properties of an existing Shared Private Link Resource | SharedPrivateLinkResourceProperties |
| type | The resource type | 'Microsoft.SignalRService/signalR/sharedPrivateLinkResources' |
SharedPrivateLinkResourceProperties
| Name | Description | Value |
|---|---|---|
| fqdns | A list of FQDNs for third party private link service | string[] |
| groupId | The group id from the provider of resource the shared private link resource is for | string (required) |
| privateLinkResourceId | The resource id of the resource the shared private link resource is for | string (required) |
| requestMessage | The request message for requesting approval of the shared private link resource | string |
Usage Examples
Terraform (AzAPI provider) resource definition
The signalR/sharedPrivateLinkResources resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.SignalRService/signalR/sharedPrivateLinkResources resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.SignalRService/signalR/sharedPrivateLinkResources@2025-01-01-preview"
name = "string"
parent_id = "string"
body = {
properties = {
fqdns = [
"string"
]
groupId = "string"
privateLinkResourceId = "string"
requestMessage = "string"
}
}
}
Property Values
Microsoft.SignalRService/signalR/sharedPrivateLinkResources
| Name | Description | Value |
|---|---|---|
| name | The resource name | string Constraints: Min length = 3 Max length = 63 Pattern = ^[a-zA-Z][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$ (required) |
| parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: signalR |
| properties | Describes the properties of an existing Shared Private Link Resource | SharedPrivateLinkResourceProperties |
| type | The resource type | "Microsoft.SignalRService/signalR/sharedPrivateLinkResources@2025-01-01-preview" |
SharedPrivateLinkResourceProperties
| Name | Description | Value |
|---|---|---|
| fqdns | A list of FQDNs for third party private link service | string[] |
| groupId | The group id from the provider of resource the shared private link resource is for | string (required) |
| privateLinkResourceId | The resource id of the resource the shared private link resource is for | string (required) |
| requestMessage | The request message for requesting approval of the shared private link resource | string |
Usage Examples
Terraform Samples
A basic example of deploying Shared Private Link Resource for a Signalr service.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
azurerm = {
source = "hashicorp/azurerm"
}
}
}
provider "azurerm" {
features {
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
data "azurerm_client_config" "current" {
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "signalR" {
type = "Microsoft.SignalRService/signalR@2023-02-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
cors = {
}
disableAadAuth = false
disableLocalAuth = false
features = [
{
flag = "ServiceMode"
value = "Default"
},
{
flag = "EnableConnectivityLogs"
value = "False"
},
{
flag = "EnableMessagingLogs"
value = "False"
},
{
flag = "EnableLiveTrace"
value = "False"
},
]
publicNetworkAccess = "Enabled"
resourceLogConfiguration = {
categories = [
{
enabled = "false"
name = "MessagingLogs"
},
{
enabled = "false"
name = "ConnectivityLogs"
},
{
enabled = "false"
name = "HttpRequestLogs"
},
]
}
serverless = {
connectionTimeoutInSeconds = 30
}
tls = {
clientCertEnabled = false
}
upstream = {
templates = [
]
}
}
sku = {
capacity = 1
name = "Standard_S1"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "vault" {
type = "Microsoft.KeyVault/vaults@2021-10-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
accessPolicies = [
{
objectId = data.azurerm_client_config.current.object_id
permissions = {
certificates = [
"ManageContacts",
]
keys = [
"Create",
]
secrets = [
"Set",
]
storage = [
]
}
tenantId = data.azurerm_client_config.current.tenant_id
},
]
createMode = "default"
enableRbacAuthorization = false
enableSoftDelete = true
enabledForDeployment = false
enabledForDiskEncryption = false
enabledForTemplateDeployment = false
publicNetworkAccess = "Enabled"
sku = {
family = "A"
name = "standard"
}
softDeleteRetentionInDays = 7
tenantId = data.azurerm_client_config.current.tenant_id
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "sharedPrivateLinkResource" {
type = "Microsoft.SignalRService/signalR/sharedPrivateLinkResources@2023-02-01"
parent_id = azapi_resource.signalR.id
name = var.resource_name
body = {
properties = {
groupId = "vault"
privateLinkResourceId = azapi_resource.vault.id
requestMessage = "please approve"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}