你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.SignalRService signalR 2023-03-01-preview

Bicep 资源定义

可以使用目标操作部署 signalR 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.SignalRService/signalR 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.SignalRService/signalR@2023-03-01-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  kind: 'string'
  location: 'string'
  name: 'string'
  properties: {
    cors: {
      allowedOrigins: [
        'string'
      ]
    }
    disableAadAuth: bool
    disableLocalAuth: bool
    features: [
      {
        flag: 'string'
        properties: {
          {customized property}: 'string'
        }
        value: 'string'
      }
    ]
    liveTraceConfiguration: {
      categories: [
        {
          enabled: 'string'
          name: 'string'
        }
      ]
      enabled: 'string'
    }
    networkACLs: {
      defaultAction: 'string'
      privateEndpoints: [
        {
          allow: [
            'string'
          ]
          deny: [
            'string'
          ]
          name: 'string'
        }
      ]
      publicNetwork: {
        allow: [
          'string'
        ]
        deny: [
          'string'
        ]
      }
    }
    publicNetworkAccess: 'string'
    resourceLogConfiguration: {
      categories: [
        {
          enabled: 'string'
          name: 'string'
        }
      ]
    }
    serverless: {
      connectionTimeoutInSeconds: int
    }
    tls: {
      clientCertEnabled: bool
    }
    upstream: {
      templates: [
        {
          auth: {
            managedIdentity: {
              resource: 'string'
            }
            type: 'string'
          }
          categoryPattern: 'string'
          eventPattern: 'string'
          hubPattern: 'string'
          urlTemplate: 'string'
        }
      ]
    }
  }
  sku: {
    capacity: int
    name: 'string'
    tier: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

属性值

LiveTraceCategory

名字 描述 价值
启用 指示是否启用了实时跟踪类别。
可用值:true、false。
不区分大小写。
字符串
名字 获取或设置实时跟踪类别的名称。
可用值:ConnectivityLogs、MessagingLogs。
不区分大小写。
字符串

LiveTraceConfiguration

名字 描述 价值
类别 获取或设置类别配置的列表。 LiveTraceCategory[]
启用 指示是否启用实时跟踪。
如果设置为 true,实时跟踪客户端可以连接到服务。
否则,实时跟踪客户端无法连接到服务,因此无论在“类别”中配置什么,都无法接收任何日志。
可用值:true、false。
不区分大小写。
字符串

ManagedIdentity

名字 描述 价值
类型 表示标识类型:systemAssigned、userAssigned、None “None”
“SystemAssigned”
“UserAssigned”
userAssignedIdentities 获取或设置用户分配的标识 ManagedIdentityUserAssignedIdentities

ManagedIdentitySettings

名字 描述 价值
资源 指示目标资源的应用 ID URI 的资源。
它还出现在已颁发的令牌的 aud(audience)声明中。
字符串

ManagedIdentityUserAssignedIdentities

名字 描述 价值

Microsoft.SignalRService/signalR

名字 描述 价值
身份 一个类表示用于请求和响应的托管标识 ManagedIdentity
服务的类型,可以是 SignalR 或 RawWebSocket “RawWebSockets”
“SignalR”
位置 资源所在的地理位置 string (必需)
名字 资源名称 字符串

约束:
最小长度 = 3
最大长度 = 3
模式 = ^[a-zA-Z][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$ (必需)
性能 描述资源属性的类 SignalRProperties
sku 资源的计费信息。 ResourceSku
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记

NetworkACL

名字 描述 价值
允许 允许的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
否认 被拒绝的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”

PrivateEndpointACL

名字 描述 价值
允许 允许的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
否认 被拒绝的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
名字 专用终结点连接的名称 string (必需)

ResourceLogCategory

名字 描述 价值
启用 指示是否启用资源日志类别。
可用值:true、false。
不区分大小写。
字符串
名字 获取或设置资源日志类别的名称。
可用值:ConnectivityLogs、MessagingLogs。
不区分大小写。
字符串

ResourceLogConfiguration

名字 描述 价值
类别 获取或设置类别配置的列表。 ResourceLogCategory[]

ResourceSku

名字 描述 价值
能力 可选,整数。 资源的单位计数。 默认情况下为 1。

如果存在,则允许以下值:
免费:1;
标准:1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100:
高级版:1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100:
int
名字 SKU 的名称。 必填。

允许的值:Standard_S1、Free_F1、Premium_P1
string (必需)
此特定 SKU 的可选层。 “Standard”或“Free”。

Basic 已弃用,请改用 Standard
“Basic”
“Free”
“Premium”
“Standard”

ServerlessSettings

名字 描述 价值
connectionTimeoutInSeconds 获取或设置客户端连接超时。 可设置可选。
值(以秒为单位)。
默认值为 30 秒。
如果预期消息以较短的间隔发送,客户应将超时设置为较短的时间段,
并且希望客户端在发送最后一条消息后更快地断开连接。
如果预期消息以较长的间隔发送,则可以将超时时间设置为更长的时间。
并且他们希望在此会话期间保持相同的客户端连接处于活动状态。
如果客户端未在此时间间隔内收到消息(包括保持活动状态),则服务会将其视为已断开连接。
int

约束:
最小值 = 1
最大值 = 120

ServerlessUpstreamSettings

名字 描述 价值
模板 获取或设置上游 URL 模板的列表。 顺序很重要,第一个匹配模板将生效。 UpstreamTemplate[]

SignalRCorsSettings

名字 描述 价值
allowedOrigins 获取或设置应允许进行跨域调用的源列表(例如:http://example.com:12345)。 使用“*”允许所有。 如果省略,则默认允许全部。 string[]

SignalRFeature

名字 描述 价值
FeatureFlags 是 Azure SignalR 服务支持的功能。
- ServiceMode:SignalR 服务的后端服务器的标志。 允许的值:“Default”:具有自己的后端服务器;“无服务器”:应用程序没有后端服务器;“经典”:为了向后兼容。 支持默认模式和无服务器模式,但不建议这样做;“PredefinedOnly”:供将来使用。
- EnableConnectivityLogs:“true”/“false”,分别启用/禁用连接日志类别。
- EnableMessagingLogs:“true”/“false”,分别启用/禁用连接日志类别。
- EnableLiveTrace:实时跟踪允许你了解 Azure SignalR 服务中发生的情况,它将实时提供实时跟踪,在开发自己的基于 Azure SignalR 的 Web 应用程序或自行排查一些问题时会很有帮助。 请注意,实时跟踪被计为将收费的出站消息。 允许的值:“true”/“false”,以启用/禁用实时跟踪功能。
“EnableConnectivityLogs”
“EnableLiveTrace”
“EnableMessagingLogs”
“ServiceMode”(必需)
性能 与此功能相关的可选属性。 SignalRFeatureProperties
价值 功能标志的值。 有关允许的值,请参阅 Azure SignalR 服务文档 /azure/azure-signalr/ 。 字符串

约束:
最小长度 = 1
最大长度 = 1 (必需)

SignalRFeatureProperties

名字 描述 价值

SignalRNetworkACLs

名字 描述 价值
defaultAction Azure 网络 ACL 操作。 “允许”
“拒绝”
privateEndpoints 来自专用终结点的请求 ACL PrivateEndpointACL[]
publicNetwork 网络 ACL NetworkACL

SignalRProperties

名字 描述 价值
cors 跨域资源共享 (CORS) 设置。 SignalRCorsSettings
disableAadAuth DisableLocalAuth
启用或禁用 aad 身份验证
如果设置为 true,则与 AuthType=aad 的连接将不起作用。
bool
disableLocalAuth DisableLocalAuth
使用 AccessKey 启用或禁用本地身份验证
如果设置为 true,则与 AccessKey=xxx 的连接将不起作用。
bool
特征 featureFlags 的列表。

不会修改更新操作的参数中包含的 FeatureFlags。
响应将仅包含显式设置的功能标志。
如果未显式设置 featureFlag,将使用其全局默认值
但请记住,默认值并不意味着“false”。 它因不同的 FeatureFlags 而异。
SignalRFeature[]
liveTraceConfiguration Microsoft.SignalRService 资源的实时跟踪配置。 LiveTraceConfiguration
networkACLs 资源的网络 ACL SignalRNetworkACLs
publicNetworkAccess 启用或禁用公用网络访问。 默认值为“Enabled”。
启用后,网络 ACL 仍适用。
禁用后,无论在网络 ACL 中设置什么,都会禁用公用网络访问。
字符串
resourceLogConfiguration Microsoft.SignalRService 资源的资源日志配置。 ResourceLogConfiguration
无服务器 无服务器设置。 ServerlessSettings
tls 资源的 TLS 设置 SignalRTlsSettings
上游 当服务处于无服务器模式时上游的设置。 ServerlessUpstreamSettings

SignalRTlsSettings

名字 描述 价值
clientCertEnabled 如果启用,请在 TLS 握手期间请求客户端证书。 免费层不支持。 对于免费层,将忽略任何输入。 bool

TrackedResourceTags

名字 描述 价值

UpstreamAuthSettings

名字 描述 价值
managedIdentity 上游的托管标识设置。 ManagedIdentitySettings
类型 上游身份验证类型枚举。 “ManagedIdentity”
“None”

UpstreamTemplate

名字 描述 价值
认证 上游身份验证设置。 如果未设置,则不会对上游消息使用身份验证。 UpstreamAuthSettings
categoryPattern 获取或设置类别名称的匹配模式。 如果未设置,则它与任何类别匹配。
支持 3 种模式:
1. “*”,它与任何类别名称匹配。
2.将多个类别与“,”例如“connections,messages”,它匹配类别“connections”和“messages”。
3. 单个类别名称,例如“connections”,它与类别“connections”匹配。
字符串
eventPattern 获取或设置事件名称的匹配模式。 如果未设置,它将匹配任何事件。
支持 3 种模式:
1. “*”,它与任何事件名称匹配。
2. 将多个事件与“,”例如“connect,disconnect”,它匹配事件“connect”和“disconnect”。
3. 单个事件名称,例如“connect”,它与“connect”匹配。
字符串
hubPattern 获取或设置中心名称的匹配模式。 如果未设置,它将匹配任何中心。
支持 3 种模式:
1. “*”,它与任何中心名称匹配。
2. 将多个中心与 “,”(例如“hub1,hub2”)合并,它与“hub1”和“hub2”匹配。
3. 单个中心名称,例如“hub1”,它与“hub1”匹配。
字符串
urlTemplate 获取或设置上游 URL 模板。 可以在模板中使用 3 个预定义参数 {hub}, {category} {event} ,当客户端请求传入时,上游 URL 的值将动态计算。
例如,如果 urlTemplate 是 http://example.com/{hub}/api/{event},而中心 chat 的客户端请求会连接,则它将首先发布到此 URL:http://example.com/chat/api/connect
string (必需)

UserAssignedIdentityProperty

名字 描述 价值

快速入门示例

以下快速入门示例部署此资源类型。

Bicep 文件 描述
部署 Azure SignalR 服务 此模板使用模板创建 Azure SignalR 服务。

ARM 模板资源定义

可以使用目标操作部署 signalR 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.SignalRService/signalR 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.SignalRService/signalR",
  "apiVersion": "2023-03-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "kind": "string",
  "location": "string",
  "properties": {
    "cors": {
      "allowedOrigins": [ "string" ]
    },
    "disableAadAuth": "bool",
    "disableLocalAuth": "bool",
    "features": [
      {
        "flag": "string",
        "properties": {
          "{customized property}": "string"
        },
        "value": "string"
      }
    ],
    "liveTraceConfiguration": {
      "categories": [
        {
          "enabled": "string",
          "name": "string"
        }
      ],
      "enabled": "string"
    },
    "networkACLs": {
      "defaultAction": "string",
      "privateEndpoints": [
        {
          "allow": [ "string" ],
          "deny": [ "string" ],
          "name": "string"
        }
      ],
      "publicNetwork": {
        "allow": [ "string" ],
        "deny": [ "string" ]
      }
    },
    "publicNetworkAccess": "string",
    "resourceLogConfiguration": {
      "categories": [
        {
          "enabled": "string",
          "name": "string"
        }
      ]
    },
    "serverless": {
      "connectionTimeoutInSeconds": "int"
    },
    "tls": {
      "clientCertEnabled": "bool"
    },
    "upstream": {
      "templates": [
        {
          "auth": {
            "managedIdentity": {
              "resource": "string"
            },
            "type": "string"
          },
          "categoryPattern": "string",
          "eventPattern": "string",
          "hubPattern": "string",
          "urlTemplate": "string"
        }
      ]
    }
  },
  "sku": {
    "capacity": "int",
    "name": "string",
    "tier": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

属性值

LiveTraceCategory

名字 描述 价值
启用 指示是否启用了实时跟踪类别。
可用值:true、false。
不区分大小写。
字符串
名字 获取或设置实时跟踪类别的名称。
可用值:ConnectivityLogs、MessagingLogs。
不区分大小写。
字符串

LiveTraceConfiguration

名字 描述 价值
类别 获取或设置类别配置的列表。 LiveTraceCategory[]
启用 指示是否启用实时跟踪。
如果设置为 true,实时跟踪客户端可以连接到服务。
否则,实时跟踪客户端无法连接到服务,因此无论在“类别”中配置什么,都无法接收任何日志。
可用值:true、false。
不区分大小写。
字符串

ManagedIdentity

名字 描述 价值
类型 表示标识类型:systemAssigned、userAssigned、None “None”
“SystemAssigned”
“UserAssigned”
userAssignedIdentities 获取或设置用户分配的标识 ManagedIdentityUserAssignedIdentities

ManagedIdentitySettings

名字 描述 价值
资源 指示目标资源的应用 ID URI 的资源。
它还出现在已颁发的令牌的 aud(audience)声明中。
字符串

ManagedIdentityUserAssignedIdentities

名字 描述 价值

Microsoft.SignalRService/signalR

名字 描述 价值
apiVersion API 版本 '2023-03-01-preview'
身份 一个类表示用于请求和响应的托管标识 ManagedIdentity
服务的类型,可以是 SignalR 或 RawWebSocket “RawWebSockets”
“SignalR”
位置 资源所在的地理位置 string (必需)
名字 资源名称 字符串

约束:
最小长度 = 3
最大长度 = 3
模式 = ^[a-zA-Z][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$ (必需)
性能 描述资源属性的类 SignalRProperties
sku 资源的计费信息。 ResourceSku
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记
类型 资源类型 “Microsoft.SignalRService/signalR”

NetworkACL

名字 描述 价值
允许 允许的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
否认 被拒绝的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”

PrivateEndpointACL

名字 描述 价值
允许 允许的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
否认 被拒绝的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
名字 专用终结点连接的名称 string (必需)

ResourceLogCategory

名字 描述 价值
启用 指示是否启用资源日志类别。
可用值:true、false。
不区分大小写。
字符串
名字 获取或设置资源日志类别的名称。
可用值:ConnectivityLogs、MessagingLogs。
不区分大小写。
字符串

ResourceLogConfiguration

名字 描述 价值
类别 获取或设置类别配置的列表。 ResourceLogCategory[]

ResourceSku

名字 描述 价值
能力 可选,整数。 资源的单位计数。 默认情况下为 1。

如果存在,则允许以下值:
免费:1;
标准:1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100:
高级版:1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100:
int
名字 SKU 的名称。 必填。

允许的值:Standard_S1、Free_F1、Premium_P1
string (必需)
此特定 SKU 的可选层。 “Standard”或“Free”。

Basic 已弃用,请改用 Standard
“Basic”
“Free”
“Premium”
“Standard”

ServerlessSettings

名字 描述 价值
connectionTimeoutInSeconds 获取或设置客户端连接超时。 可设置可选。
值(以秒为单位)。
默认值为 30 秒。
如果预期消息以较短的间隔发送,客户应将超时设置为较短的时间段,
并且希望客户端在发送最后一条消息后更快地断开连接。
如果预期消息以较长的间隔发送,则可以将超时时间设置为更长的时间。
并且他们希望在此会话期间保持相同的客户端连接处于活动状态。
如果客户端未在此时间间隔内收到消息(包括保持活动状态),则服务会将其视为已断开连接。
int

约束:
最小值 = 1
最大值 = 120

ServerlessUpstreamSettings

名字 描述 价值
模板 获取或设置上游 URL 模板的列表。 顺序很重要,第一个匹配模板将生效。 UpstreamTemplate[]

SignalRCorsSettings

名字 描述 价值
allowedOrigins 获取或设置应允许进行跨域调用的源列表(例如:http://example.com:12345)。 使用“*”允许所有。 如果省略,则默认允许全部。 string[]

SignalRFeature

名字 描述 价值
FeatureFlags 是 Azure SignalR 服务支持的功能。
- ServiceMode:SignalR 服务的后端服务器的标志。 允许的值:“Default”:具有自己的后端服务器;“无服务器”:应用程序没有后端服务器;“经典”:为了向后兼容。 支持默认模式和无服务器模式,但不建议这样做;“PredefinedOnly”:供将来使用。
- EnableConnectivityLogs:“true”/“false”,分别启用/禁用连接日志类别。
- EnableMessagingLogs:“true”/“false”,分别启用/禁用连接日志类别。
- EnableLiveTrace:实时跟踪允许你了解 Azure SignalR 服务中发生的情况,它将实时提供实时跟踪,在开发自己的基于 Azure SignalR 的 Web 应用程序或自行排查一些问题时会很有帮助。 请注意,实时跟踪被计为将收费的出站消息。 允许的值:“true”/“false”,以启用/禁用实时跟踪功能。
“EnableConnectivityLogs”
“EnableLiveTrace”
“EnableMessagingLogs”
“ServiceMode”(必需)
性能 与此功能相关的可选属性。 SignalRFeatureProperties
价值 功能标志的值。 有关允许的值,请参阅 Azure SignalR 服务文档 /azure/azure-signalr/ 。 字符串

约束:
最小长度 = 1
最大长度 = 1 (必需)

SignalRFeatureProperties

名字 描述 价值

SignalRNetworkACLs

名字 描述 价值
defaultAction Azure 网络 ACL 操作。 “允许”
“拒绝”
privateEndpoints 来自专用终结点的请求 ACL PrivateEndpointACL[]
publicNetwork 网络 ACL NetworkACL

SignalRProperties

名字 描述 价值
cors 跨域资源共享 (CORS) 设置。 SignalRCorsSettings
disableAadAuth DisableLocalAuth
启用或禁用 aad 身份验证
如果设置为 true,则与 AuthType=aad 的连接将不起作用。
bool
disableLocalAuth DisableLocalAuth
使用 AccessKey 启用或禁用本地身份验证
如果设置为 true,则与 AccessKey=xxx 的连接将不起作用。
bool
特征 featureFlags 的列表。

不会修改更新操作的参数中包含的 FeatureFlags。
响应将仅包含显式设置的功能标志。
如果未显式设置 featureFlag,将使用其全局默认值
但请记住,默认值并不意味着“false”。 它因不同的 FeatureFlags 而异。
SignalRFeature[]
liveTraceConfiguration Microsoft.SignalRService 资源的实时跟踪配置。 LiveTraceConfiguration
networkACLs 资源的网络 ACL SignalRNetworkACLs
publicNetworkAccess 启用或禁用公用网络访问。 默认值为“Enabled”。
启用后,网络 ACL 仍适用。
禁用后,无论在网络 ACL 中设置什么,都会禁用公用网络访问。
字符串
resourceLogConfiguration Microsoft.SignalRService 资源的资源日志配置。 ResourceLogConfiguration
无服务器 无服务器设置。 ServerlessSettings
tls 资源的 TLS 设置 SignalRTlsSettings
上游 当服务处于无服务器模式时上游的设置。 ServerlessUpstreamSettings

SignalRTlsSettings

名字 描述 价值
clientCertEnabled 如果启用,请在 TLS 握手期间请求客户端证书。 免费层不支持。 对于免费层,将忽略任何输入。 bool

TrackedResourceTags

名字 描述 价值

UpstreamAuthSettings

名字 描述 价值
managedIdentity 上游的托管标识设置。 ManagedIdentitySettings
类型 上游身份验证类型枚举。 “ManagedIdentity”
“None”

UpstreamTemplate

名字 描述 价值
认证 上游身份验证设置。 如果未设置,则不会对上游消息使用身份验证。 UpstreamAuthSettings
categoryPattern 获取或设置类别名称的匹配模式。 如果未设置,则它与任何类别匹配。
支持 3 种模式:
1. “*”,它与任何类别名称匹配。
2.将多个类别与“,”例如“connections,messages”,它匹配类别“connections”和“messages”。
3. 单个类别名称,例如“connections”,它与类别“connections”匹配。
字符串
eventPattern 获取或设置事件名称的匹配模式。 如果未设置,它将匹配任何事件。
支持 3 种模式:
1. “*”,它与任何事件名称匹配。
2. 将多个事件与“,”例如“connect,disconnect”,它匹配事件“connect”和“disconnect”。
3. 单个事件名称,例如“connect”,它与“connect”匹配。
字符串
hubPattern 获取或设置中心名称的匹配模式。 如果未设置,它将匹配任何中心。
支持 3 种模式:
1. “*”,它与任何中心名称匹配。
2. 将多个中心与 “,”(例如“hub1,hub2”)合并,它与“hub1”和“hub2”匹配。
3. 单个中心名称,例如“hub1”,它与“hub1”匹配。
字符串
urlTemplate 获取或设置上游 URL 模板。 可以在模板中使用 3 个预定义参数 {hub}, {category} {event} ,当客户端请求传入时,上游 URL 的值将动态计算。
例如,如果 urlTemplate 是 http://example.com/{hub}/api/{event},而中心 chat 的客户端请求会连接,则它将首先发布到此 URL:http://example.com/chat/api/connect
string (必需)

UserAssignedIdentityProperty

名字 描述 价值

快速入门模板

以下快速入门模板部署此资源类型。

模板 描述
部署 Azure SignalR 服务

部署到 Azure
此模板使用模板创建 Azure SignalR 服务。

Terraform (AzAPI 提供程序)资源定义

可以使用目标操作部署 signalR 资源类型:

  • 资源组

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.SignalRService/signalR 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.SignalRService/signalR@2023-03-01-preview"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
      }
    }
  }
  kind = "string"
  location = "string"
  sku = {
    capacity = int
    name = "string"
    tier = "string"
  }
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    properties = {
      cors = {
        allowedOrigins = [
          "string"
        ]
      }
      disableAadAuth = bool
      disableLocalAuth = bool
      features = [
        {
          flag = "string"
          properties = {
            {customized property} = "string"
          }
          value = "string"
        }
      ]
      liveTraceConfiguration = {
        categories = [
          {
            enabled = "string"
            name = "string"
          }
        ]
        enabled = "string"
      }
      networkACLs = {
        defaultAction = "string"
        privateEndpoints = [
          {
            allow = [
              "string"
            ]
            deny = [
              "string"
            ]
            name = "string"
          }
        ]
        publicNetwork = {
          allow = [
            "string"
          ]
          deny = [
            "string"
          ]
        }
      }
      publicNetworkAccess = "string"
      resourceLogConfiguration = {
        categories = [
          {
            enabled = "string"
            name = "string"
          }
        ]
      }
      serverless = {
        connectionTimeoutInSeconds = int
      }
      tls = {
        clientCertEnabled = bool
      }
      upstream = {
        templates = [
          {
            auth = {
              managedIdentity = {
                resource = "string"
              }
              type = "string"
            }
            categoryPattern = "string"
            eventPattern = "string"
            hubPattern = "string"
            urlTemplate = "string"
          }
        ]
      }
    }
  })
}

属性值

LiveTraceCategory

名字 描述 价值
启用 指示是否启用了实时跟踪类别。
可用值:true、false。
不区分大小写。
字符串
名字 获取或设置实时跟踪类别的名称。
可用值:ConnectivityLogs、MessagingLogs。
不区分大小写。
字符串

LiveTraceConfiguration

名字 描述 价值
类别 获取或设置类别配置的列表。 LiveTraceCategory[]
启用 指示是否启用实时跟踪。
如果设置为 true,实时跟踪客户端可以连接到服务。
否则,实时跟踪客户端无法连接到服务,因此无论在“类别”中配置什么,都无法接收任何日志。
可用值:true、false。
不区分大小写。
字符串

ManagedIdentity

名字 描述 价值
类型 表示标识类型:systemAssigned、userAssigned、None “None”
“SystemAssigned”
“UserAssigned”
userAssignedIdentities 获取或设置用户分配的标识 ManagedIdentityUserAssignedIdentities

ManagedIdentitySettings

名字 描述 价值
资源 指示目标资源的应用 ID URI 的资源。
它还出现在已颁发的令牌的 aud(audience)声明中。
字符串

ManagedIdentityUserAssignedIdentities

名字 描述 价值

Microsoft.SignalRService/signalR

名字 描述 价值
身份 一个类表示用于请求和响应的托管标识 ManagedIdentity
服务的类型,可以是 SignalR 或 RawWebSocket “RawWebSockets”
“SignalR”
位置 资源所在的地理位置 string (必需)
名字 资源名称 字符串

约束:
最小长度 = 3
最大长度 = 3
模式 = ^[a-zA-Z][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$ (必需)
性能 描述资源属性的类 SignalRProperties
sku 资源的计费信息。 ResourceSku
标签 资源标记 标记名称和值的字典。
类型 资源类型 “Microsoft.SignalRService/signalR@2023-03-01-preview”

NetworkACL

名字 描述 价值
允许 允许的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
否认 被拒绝的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”

PrivateEndpointACL

名字 描述 价值
允许 允许的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
否认 被拒绝的请求类型。 该值可以是一个或多个:ClientConnection、ServerConnection、RESTAPI。 包含任一项的字符串数组:
“ClientConnection”
“RESTAPI”
“ServerConnection”
“Trace”
名字 专用终结点连接的名称 string (必需)

ResourceLogCategory

名字 描述 价值
启用 指示是否启用资源日志类别。
可用值:true、false。
不区分大小写。
字符串
名字 获取或设置资源日志类别的名称。
可用值:ConnectivityLogs、MessagingLogs。
不区分大小写。
字符串

ResourceLogConfiguration

名字 描述 价值
类别 获取或设置类别配置的列表。 ResourceLogCategory[]

ResourceSku

名字 描述 价值
能力 可选,整数。 资源的单位计数。 默认情况下为 1。

如果存在,则允许以下值:
免费:1;
标准:1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100:
高级版:1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70,80,90,100:
int
名字 SKU 的名称。 必填。

允许的值:Standard_S1、Free_F1、Premium_P1
string (必需)
此特定 SKU 的可选层。 “Standard”或“Free”。

Basic 已弃用,请改用 Standard
“Basic”
“Free”
“Premium”
“Standard”

ServerlessSettings

名字 描述 价值
connectionTimeoutInSeconds 获取或设置客户端连接超时。 可设置可选。
值(以秒为单位)。
默认值为 30 秒。
如果预期消息以较短的间隔发送,客户应将超时设置为较短的时间段,
并且希望客户端在发送最后一条消息后更快地断开连接。
如果预期消息以较长的间隔发送,则可以将超时时间设置为更长的时间。
并且他们希望在此会话期间保持相同的客户端连接处于活动状态。
如果客户端未在此时间间隔内收到消息(包括保持活动状态),则服务会将其视为已断开连接。
int

约束:
最小值 = 1
最大值 = 120

ServerlessUpstreamSettings

名字 描述 价值
模板 获取或设置上游 URL 模板的列表。 顺序很重要,第一个匹配模板将生效。 UpstreamTemplate[]

SignalRCorsSettings

名字 描述 价值
allowedOrigins 获取或设置应允许进行跨域调用的源列表(例如:http://example.com:12345)。 使用“*”允许所有。 如果省略,则默认允许全部。 string[]

SignalRFeature

名字 描述 价值
FeatureFlags 是 Azure SignalR 服务支持的功能。
- ServiceMode:SignalR 服务的后端服务器的标志。 允许的值:“Default”:具有自己的后端服务器;“无服务器”:应用程序没有后端服务器;“经典”:为了向后兼容。 支持默认模式和无服务器模式,但不建议这样做;“PredefinedOnly”:供将来使用。
- EnableConnectivityLogs:“true”/“false”,分别启用/禁用连接日志类别。
- EnableMessagingLogs:“true”/“false”,分别启用/禁用连接日志类别。
- EnableLiveTrace:实时跟踪允许你了解 Azure SignalR 服务中发生的情况,它将实时提供实时跟踪,在开发自己的基于 Azure SignalR 的 Web 应用程序或自行排查一些问题时会很有帮助。 请注意,实时跟踪被计为将收费的出站消息。 允许的值:“true”/“false”,以启用/禁用实时跟踪功能。
“EnableConnectivityLogs”
“EnableLiveTrace”
“EnableMessagingLogs”
“ServiceMode”(必需)
性能 与此功能相关的可选属性。 SignalRFeatureProperties
价值 功能标志的值。 有关允许的值,请参阅 Azure SignalR 服务文档 /azure/azure-signalr/ 。 字符串

约束:
最小长度 = 1
最大长度 = 1 (必需)

SignalRFeatureProperties

名字 描述 价值

SignalRNetworkACLs

名字 描述 价值
defaultAction Azure 网络 ACL 操作。 “允许”
“拒绝”
privateEndpoints 来自专用终结点的请求 ACL PrivateEndpointACL[]
publicNetwork 网络 ACL NetworkACL

SignalRProperties

名字 描述 价值
cors 跨域资源共享 (CORS) 设置。 SignalRCorsSettings
disableAadAuth DisableLocalAuth
启用或禁用 aad 身份验证
如果设置为 true,则与 AuthType=aad 的连接将不起作用。
bool
disableLocalAuth DisableLocalAuth
使用 AccessKey 启用或禁用本地身份验证
如果设置为 true,则与 AccessKey=xxx 的连接将不起作用。
bool
特征 featureFlags 的列表。

不会修改更新操作的参数中包含的 FeatureFlags。
响应将仅包含显式设置的功能标志。
如果未显式设置 featureFlag,将使用其全局默认值
但请记住,默认值并不意味着“false”。 它因不同的 FeatureFlags 而异。
SignalRFeature[]
liveTraceConfiguration Microsoft.SignalRService 资源的实时跟踪配置。 LiveTraceConfiguration
networkACLs 资源的网络 ACL SignalRNetworkACLs
publicNetworkAccess 启用或禁用公用网络访问。 默认值为“Enabled”。
启用后,网络 ACL 仍适用。
禁用后,无论在网络 ACL 中设置什么,都会禁用公用网络访问。
字符串
resourceLogConfiguration Microsoft.SignalRService 资源的资源日志配置。 ResourceLogConfiguration
无服务器 无服务器设置。 ServerlessSettings
tls 资源的 TLS 设置 SignalRTlsSettings
上游 当服务处于无服务器模式时上游的设置。 ServerlessUpstreamSettings

SignalRTlsSettings

名字 描述 价值
clientCertEnabled 如果启用,请在 TLS 握手期间请求客户端证书。 免费层不支持。 对于免费层,将忽略任何输入。 bool

TrackedResourceTags

名字 描述 价值

UpstreamAuthSettings

名字 描述 价值
managedIdentity 上游的托管标识设置。 ManagedIdentitySettings
类型 上游身份验证类型枚举。 “ManagedIdentity”
“None”

UpstreamTemplate

名字 描述 价值
认证 上游身份验证设置。 如果未设置,则不会对上游消息使用身份验证。 UpstreamAuthSettings
categoryPattern 获取或设置类别名称的匹配模式。 如果未设置,则它与任何类别匹配。
支持 3 种模式:
1. “*”,它与任何类别名称匹配。
2.将多个类别与“,”例如“connections,messages”,它匹配类别“connections”和“messages”。
3. 单个类别名称,例如“connections”,它与类别“connections”匹配。
字符串
eventPattern 获取或设置事件名称的匹配模式。 如果未设置,它将匹配任何事件。
支持 3 种模式:
1. “*”,它与任何事件名称匹配。
2. 将多个事件与“,”例如“connect,disconnect”,它匹配事件“connect”和“disconnect”。
3. 单个事件名称,例如“connect”,它与“connect”匹配。
字符串
hubPattern 获取或设置中心名称的匹配模式。 如果未设置,它将匹配任何中心。
支持 3 种模式:
1. “*”,它与任何中心名称匹配。
2. 将多个中心与 “,”(例如“hub1,hub2”)合并,它与“hub1”和“hub2”匹配。
3. 单个中心名称,例如“hub1”,它与“hub1”匹配。
字符串
urlTemplate 获取或设置上游 URL 模板。 可以在模板中使用 3 个预定义参数 {hub}, {category} {event} ,当客户端请求传入时,上游 URL 的值将动态计算。
例如,如果 urlTemplate 是 http://example.com/{hub}/api/{event},而中心 chat 的客户端请求会连接,则它将首先发布到此 URL:http://example.com/chat/api/connect
string (必需)

UserAssignedIdentityProperty

名字 描述 价值