Tópicos do Microsoft.EventGrid

Definição de recursos do bíceps

O tipo de recurso de tópicos pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.EventGrid/topics, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.EventGrid/topics@2025-07-15-preview' = {
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  identity: {
    principalId: 'string'
    tenantId: 'string'
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {
        clientId: 'string'
        principalId: 'string'
      }
    }
  }
  kind: 'string'
  location: 'string'
  name: 'string'
  properties: {
    dataResidencyBoundary: 'string'
    disableLocalAuth: bool
    encryption: {
      customerManagedKeyEncryption: [
        {
          keyEncryptionKeyIdentity: {
            type: 'string'
            userAssignedIdentityResourceId: 'string'
          }
          keyEncryptionKeyUrl: 'string'
        }
      ]
    }
    eventTypeInfo: {
      inlineEventTypes: {
        {customized property}: {
          dataSchemaUrl: 'string'
          description: 'string'
          displayName: 'string'
          documentationUrl: 'string'
        }
      }
      kind: 'string'
    }
    inboundIpRules: [
      {
        action: 'string'
        ipMask: 'string'
      }
    ]
    inputSchema: 'string'
    inputSchemaMapping: {
      inputSchemaMappingType: 'string'
      // For remaining properties, see InputSchemaMapping objects
    }
    minimumTlsVersionAllowed: 'string'
    platformCapabilities: {
      confidentialCompute: {
        mode: 'string'
      }
    }
    publicNetworkAccess: 'string'
  }
  sku: {
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Objetos InputSchemaMapping

Defina a propriedade inputSchemaMappingType para especificar o tipo de objeto.

Para Json, use:

{
  inputSchemaMappingType: 'Json'
  properties: {
    dataVersion: {
      defaultValue: 'string'
      sourceField: 'string'
    }
    eventTime: {
      sourceField: 'string'
    }
    eventType: {
      defaultValue: 'string'
      sourceField: 'string'
    }
    id: {
      sourceField: 'string'
    }
    subject: {
      defaultValue: 'string'
      sourceField: 'string'
    }
    topic: {
      sourceField: 'string'
    }
  }
}

Valores de propriedade

Microsoft.EventGrid/tópicos

Designação Descrição Valor
extendedLocalização Localização estendida do recurso. Localização Estendida
identidade Informações de identidade para o recurso. IdentityInfo
tipo Tipo de recurso. 'Azure'
'AzureArc'
localização Localização do recurso. string (obrigatório)
Designação O nome do recurso string (obrigatório)
propriedades Propriedades do tópico. TopicProperties
SKU O nível de preço de Sku para o tópico. ResourceSku
Etiquetas Tags de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos

Computação confidencial

Designação Descrição Valor
mode Esta propriedade especifica o modo da configuração Azure Confidential Compute.
Os valores possíveis são 'Desativado' ou 'Ativado'.
Este é um conjunto de propriedades imutável no momento da criação do recurso e não pode ser modificado posteriormente.
Ativar esta propriedade garante que as mensagens são processadas e armazenadas num ambiente Azure Confidential Compute.
'Desativado'
'Ativado' (obrigatório)

CustomerManagedKeyEncryption

Designação Descrição Valor
keyEncryptionKeyIdentity Toda a configuração de identidade para configurações de chave gerenciadas pelo cliente definindo qual identidade deve ser usada para autenticação no Cofre de Chaves. Esta é uma propriedade opcional.
Quando não especificado, será usada a identidade SystemAssigned.
KeyEncryptionKeyIdentity
keyEncryptionKeyUrl URL da chave de encriptação de chaves. Este URL pode ser versionado (por exemplo, https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78), ou não versionado (por exemplo,
https://contosovault.vault.azure.net/keys/contosokek. Quando é usada a URL versionada, esta versão da chave será usada pelo Event Grid Runtime, mesmo que seja rodada. É utilizador
responsabilidade de atualizar o URL com a nova versão atualizando o recurso do namespace. Quando o URL sem versão é usado, o Event Grid irá consultar e obter a versão mais recente e
ser usado automaticamente.
string (obrigatório)

EventTypeInfo

Designação Descrição Valor
inlineEventTypes Uma coleção de tipos de eventos embutidos para o recurso. As chaves de tipo de evento embutidas são do tipo string que representa o nome do evento.
Um exemplo de um nome de evento embutido válido é "Contoso.OrderCreated".
Os valores de tipo de evento embutido são do tipo InlineEventProperties e conterão informações adicionais para cada tipo de evento embutido.
EventTypeInfoInlineEventTypes
tipo O tipo de tipo de evento usado. 'Em linha'

EventTypeInfoInlineEventTypes

Designação Descrição Valor

Localização Estendida

Designação Descrição Valor
Designação Nome totalmente qualificado do local estendido. cadeia (de caracteres)
tipo Tipo de local estendido. cadeia (de caracteres)

IdentityInfo

Designação Descrição Valor
principalId A ID principal da identidade do recurso. cadeia (de caracteres)
inquilinoId A ID do locatário do recurso. cadeia (de caracteres)
tipo O tipo de identidade gerenciada usada. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada implicitamente e um conjunto de identidades atribuídas pelo usuário. O tipo 'Nenhum' removerá qualquer identidade. 'Nenhuma'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
identidades atribuídas pelo utilizador A lista de identidades de usuário associadas ao recurso. As referências de chave do dicionário de identidade do usuário serão ids de recurso ARM no formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
Esta propriedade não é usada no momento e está reservada para uso futuro.
IdentityInfoUserAssignedIdentities

IdentityInfoUserAssignedIdentities

Designação Descrição Valor

InboundIpRule

Designação Descrição Valor
ação Ação a executar com base na correspondência ou não correspondência da IpMask. 'Permitir'
ipMask Endereço IP na notação CIDR, por exemplo, 10.0.0.0/8. cadeia (de caracteres)

InlineEventProperties

Designação Descrição Valor
dataSchemaUrl O dataSchemaUrl para o evento inline. cadeia (de caracteres)
Descrição A descrição do evento embutido. cadeia (de caracteres)
nome de exibição O displayName para o evento embutido. cadeia (de caracteres)
documentationUrl O documentationUrl para o evento inline. cadeia (de caracteres)

InputSchemaMapping

Designação Descrição Valor
inputSchemaMappingType Defina como 'Json' para o tipo JsonInputSchemaMapping. 'Json' (obrigatório)

JsonField

Designação Descrição Valor
fonteField Nome de um campo no esquema de eventos de entrada que deve ser usado como a origem de um mapeamento. cadeia (de caracteres)

JsonFieldWithDefault

Designação Descrição Valor
valor padrão O valor padrão a ser usado para mapeamento quando um SourceField não é fornecido ou se não há nenhuma propriedade com o nome especificado na carga de evento JSON publicada. cadeia (de caracteres)
fonteField Nome de um campo no esquema de eventos de entrada que deve ser usado como a origem de um mapeamento. cadeia (de caracteres)

JsonInputSchemaMapping

Designação Descrição Valor
inputSchemaMappingType Tipo de mapeamento personalizado 'Json' (obrigatório)
propriedades Propriedades JSON do mapeamento do esquema de entrada JsonInputSchemaMappingProperties

JsonInputSchemaMappingProperties

Designação Descrição Valor
versão de dados As informações de mapeamento para a propriedade DataVersion do evento Event Grid. JsonFieldWithDefault
hora do evento As informações de mapeamento para a propriedade EventTime do evento Event Grid. JsonField
tipo de evento As informações de mapeamento para a propriedade EventType do evento Event Grid. JsonFieldWithDefault
ID As informações de mapeamento para a propriedade Id do evento Event Grid. JsonField
Assunto As informações de mapeamento para a propriedade Subject do evento Event Grid. JsonFieldWithDefault
tópico As informações de mapeamento para a propriedade Topic do evento Event Grid. JsonField

KeyEncryption

Designação Descrição Valor
customerManagedKeyEncryption Lista de todas as propriedades de encriptação de chaves geridas pelo cliente para o recurso. No entanto, apenas uma chave é suportada de cada vez. CustomerManagedKeyEncryption[] (obrigatório)

KeyEncryptionKeyIdentity

Designação Descrição Valor
tipo O tipo de identidade gerenciada usada. Apenas são suportados os UtilizadoresAtribuídos ou Identidades SistemaAtribuídas. 'SystemAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentityResourceId Azure Resource totalmente qualificado Id para a identidade atribuída pelo utilizador associada ao recurso. O Id de recurso assume o seguinte formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
cadeia (de caracteres)

PlataformaCapacidades

Designação Descrição Valor
confidentialCompute Representa as propriedades Azure Confidential Compute do recurso. Computação confidencial

ResourceSku

Designação Descrição Valor
Designação O nome da Sku do recurso. Os valores possíveis são: Básico ou Premium. 'Básico'
'Premium'

TopicProperties

Designação Descrição Valor
dataResidencyBoundary Limite de residência de dados do recurso. 'WithinGeopair'
'Dentroda Região'
disableLocalAuth Este booleano é usado para ativar ou desativar a autenticação local. O valor padrão é false. Quando a propriedade é definida como true, somente o token de ID do Microsoft Entra será usado para autenticar se o usuário tiver permissão para publicar no tópico. Bool
cifragem Propriedades de configuração de encriptação de chave do recurso tema. Esta é uma propriedade opcional. Quando não especificado, não é utilizada encriptação de chaves. KeyEncryption
eventTypeInfo Informações de tipo de evento para o tópico do usuário. Esta informação é fornecida pelo editor e pode ser usada pelo
assinante para visualizar diferentes tipos de eventos que são publicados.
EventTypeInfo
inboundIpRules Isso pode ser usado para restringir o tráfego de IPs específicos em vez de todos os IPs. Nota: Estes são considerados apenas se PublicNetworkAccess estiver ativado. InboundIpRule[]
inputSchema Isso determina o formato que a Grade de Eventos deve esperar para eventos de entrada publicados no tópico. 'CloudEventSchemaV1_0'
'CustomEventSchema'
'EventGridSchema'
inputSchemaMapping Isso permite a publicação usando esquemas de eventos personalizados. Um InputSchemaMapping pode ser especificado para mapear várias propriedades de um esquema de origem para várias propriedades necessárias do esquema EventGridEvent. InputSchemaMapping
mínimoTlsVersionAllowed Versão TLS mínima do editor autorizada a publicar neste tópico '1.0'
'1.1'
'1.2'
plataformaCapacidades Representa as capacidades da plataforma do recurso, incluindo propriedades relacionadas com o Azure Confidential Compute. PlataformaCapacidades
acesso à rede pública Isso determina se o tráfego é permitido na rede pública. Por padrão, ele está habilitado.
Você pode restringir ainda mais a IPs específicos configurando <seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.TopicProperties.InboundIpRules" />
'Desativado'
'Habilitado'
'SecuredByPerimeter'

TrackedResourceTags

Designação Descrição Valor

UserIdentityProperties

Designação Descrição Valor
ID do cliente O ID do cliente da identidade atribuída ao usuário. cadeia (de caracteres)
principalId O id principal da identidade atribuída ao usuário. cadeia (de caracteres)

Exemplos de uso

Amostras de bíceps

Um exemplo básico de implantação do EventGrid Topic.

param resourceName string = 'acctest0001'
param location string = 'westeurope'

resource topic 'Microsoft.EventGrid/topics@2021-12-01' = {
  name: resourceName
  location: location
  properties: {
    disableLocalAuth: false
    inputSchema: 'EventGridSchema'
    inputSchemaMapping: null
    publicNetworkAccess: 'Enabled'
  }
}

Módulos verificados do Azure

Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.

Módulo Descrição
Tópico da Grade de Eventos Tópico do módulo de recursos AVM para grade de eventos

Exemplos de início rápido do Azure

Os seguintes modelos início rápido do Azure contêm exemplos de Bicep para implantar esse tipo de recurso.

Arquivo Bicep Descrição
Criar Tópico Personalizado da Grade de Eventos do Azure e de Assinatura de Fila Cria um tópico personalizado da Grade de Eventos do Azure e uma assinatura de fila de barramento de serviço. Modelo originalmente de autoria de Markus Meyer.
Criar tópico personalizado da grade de eventos do Azure e de assinatura Cria um tópico personalizado da Grade de Eventos do Azure e uma assinatura de webhook. Modelo originalmente criado por John Downs.

Definição de recurso de modelo ARM

O tipo de recurso de tópicos pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.EventGrid/topics, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.EventGrid/topics",
  "apiVersion": "2025-07-15-preview",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "string"
  },
  "identity": {
    "principalId": "string",
    "tenantId": "string",
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
        "clientId": "string",
        "principalId": "string"
      }
    }
  },
  "kind": "string",
  "location": "string",
  "properties": {
    "dataResidencyBoundary": "string",
    "disableLocalAuth": "bool",
    "encryption": {
      "customerManagedKeyEncryption": [
        {
          "keyEncryptionKeyIdentity": {
            "type": "string",
            "userAssignedIdentityResourceId": "string"
          },
          "keyEncryptionKeyUrl": "string"
        }
      ]
    },
    "eventTypeInfo": {
      "inlineEventTypes": {
        "{customized property}": {
          "dataSchemaUrl": "string",
          "description": "string",
          "displayName": "string",
          "documentationUrl": "string"
        }
      },
      "kind": "string"
    },
    "inboundIpRules": [
      {
        "action": "string",
        "ipMask": "string"
      }
    ],
    "inputSchema": "string",
    "inputSchemaMapping": {
      "inputSchemaMappingType": "string"
      // For remaining properties, see InputSchemaMapping objects
    },
    "minimumTlsVersionAllowed": "string",
    "platformCapabilities": {
      "confidentialCompute": {
        "mode": "string"
      }
    },
    "publicNetworkAccess": "string"
  },
  "sku": {
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Objetos InputSchemaMapping

Defina a propriedade inputSchemaMappingType para especificar o tipo de objeto.

Para Json, use:

{
  "inputSchemaMappingType": "Json",
  "properties": {
    "dataVersion": {
      "defaultValue": "string",
      "sourceField": "string"
    },
    "eventTime": {
      "sourceField": "string"
    },
    "eventType": {
      "defaultValue": "string",
      "sourceField": "string"
    },
    "id": {
      "sourceField": "string"
    },
    "subject": {
      "defaultValue": "string",
      "sourceField": "string"
    },
    "topic": {
      "sourceField": "string"
    }
  }
}

Valores de propriedade

Microsoft.EventGrid/tópicos

Designação Descrição Valor
Versão da API A versão api '2025-07-15-preview'
extendedLocalização Localização estendida do recurso. Localização Estendida
identidade Informações de identidade para o recurso. IdentityInfo
tipo Tipo de recurso. 'Azure'
'AzureArc'
localização Localização do recurso. string (obrigatório)
Designação O nome do recurso string (obrigatório)
propriedades Propriedades do tópico. TopicProperties
SKU O nível de preço de Sku para o tópico. ResourceSku
Etiquetas Tags de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos
tipo O tipo de recurso 'Microsoft.EventGrid/topics'

Computação confidencial

Designação Descrição Valor
mode Esta propriedade especifica o modo da configuração Azure Confidential Compute.
Os valores possíveis são 'Desativado' ou 'Ativado'.
Este é um conjunto de propriedades imutável no momento da criação do recurso e não pode ser modificado posteriormente.
Ativar esta propriedade garante que as mensagens são processadas e armazenadas num ambiente Azure Confidential Compute.
'Desativado'
'Ativado' (obrigatório)

CustomerManagedKeyEncryption

Designação Descrição Valor
keyEncryptionKeyIdentity Toda a configuração de identidade para configurações de chave gerenciadas pelo cliente definindo qual identidade deve ser usada para autenticação no Cofre de Chaves. Esta é uma propriedade opcional.
Quando não especificado, será usada a identidade SystemAssigned.
KeyEncryptionKeyIdentity
keyEncryptionKeyUrl URL da chave de encriptação de chaves. Este URL pode ser versionado (por exemplo, https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78), ou não versionado (por exemplo,
https://contosovault.vault.azure.net/keys/contosokek. Quando é usada a URL versionada, esta versão da chave será usada pelo Event Grid Runtime, mesmo que seja rodada. É utilizador
responsabilidade de atualizar o URL com a nova versão atualizando o recurso do namespace. Quando o URL sem versão é usado, o Event Grid irá consultar e obter a versão mais recente e
ser usado automaticamente.
string (obrigatório)

EventTypeInfo

Designação Descrição Valor
inlineEventTypes Uma coleção de tipos de eventos embutidos para o recurso. As chaves de tipo de evento embutidas são do tipo string que representa o nome do evento.
Um exemplo de um nome de evento embutido válido é "Contoso.OrderCreated".
Os valores de tipo de evento embutido são do tipo InlineEventProperties e conterão informações adicionais para cada tipo de evento embutido.
EventTypeInfoInlineEventTypes
tipo O tipo de tipo de evento usado. 'Em linha'

EventTypeInfoInlineEventTypes

Designação Descrição Valor

Localização Estendida

Designação Descrição Valor
Designação Nome totalmente qualificado do local estendido. cadeia (de caracteres)
tipo Tipo de local estendido. cadeia (de caracteres)

IdentityInfo

Designação Descrição Valor
principalId A ID principal da identidade do recurso. cadeia (de caracteres)
inquilinoId A ID do locatário do recurso. cadeia (de caracteres)
tipo O tipo de identidade gerenciada usada. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada implicitamente e um conjunto de identidades atribuídas pelo usuário. O tipo 'Nenhum' removerá qualquer identidade. 'Nenhuma'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
identidades atribuídas pelo utilizador A lista de identidades de usuário associadas ao recurso. As referências de chave do dicionário de identidade do usuário serão ids de recurso ARM no formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
Esta propriedade não é usada no momento e está reservada para uso futuro.
IdentityInfoUserAssignedIdentities

IdentityInfoUserAssignedIdentities

Designação Descrição Valor

InboundIpRule

Designação Descrição Valor
ação Ação a executar com base na correspondência ou não correspondência da IpMask. 'Permitir'
ipMask Endereço IP na notação CIDR, por exemplo, 10.0.0.0/8. cadeia (de caracteres)

InlineEventProperties

Designação Descrição Valor
dataSchemaUrl O dataSchemaUrl para o evento inline. cadeia (de caracteres)
Descrição A descrição do evento embutido. cadeia (de caracteres)
nome de exibição O displayName para o evento embutido. cadeia (de caracteres)
documentationUrl O documentationUrl para o evento inline. cadeia (de caracteres)

InputSchemaMapping

Designação Descrição Valor
inputSchemaMappingType Defina como 'Json' para o tipo JsonInputSchemaMapping. 'Json' (obrigatório)

JsonField

Designação Descrição Valor
fonteField Nome de um campo no esquema de eventos de entrada que deve ser usado como a origem de um mapeamento. cadeia (de caracteres)

JsonFieldWithDefault

Designação Descrição Valor
valor padrão O valor padrão a ser usado para mapeamento quando um SourceField não é fornecido ou se não há nenhuma propriedade com o nome especificado na carga de evento JSON publicada. cadeia (de caracteres)
fonteField Nome de um campo no esquema de eventos de entrada que deve ser usado como a origem de um mapeamento. cadeia (de caracteres)

JsonInputSchemaMapping

Designação Descrição Valor
inputSchemaMappingType Tipo de mapeamento personalizado 'Json' (obrigatório)
propriedades Propriedades JSON do mapeamento do esquema de entrada JsonInputSchemaMappingProperties

JsonInputSchemaMappingProperties

Designação Descrição Valor
versão de dados As informações de mapeamento para a propriedade DataVersion do evento Event Grid. JsonFieldWithDefault
hora do evento As informações de mapeamento para a propriedade EventTime do evento Event Grid. JsonField
tipo de evento As informações de mapeamento para a propriedade EventType do evento Event Grid. JsonFieldWithDefault
ID As informações de mapeamento para a propriedade Id do evento Event Grid. JsonField
Assunto As informações de mapeamento para a propriedade Subject do evento Event Grid. JsonFieldWithDefault
tópico As informações de mapeamento para a propriedade Topic do evento Event Grid. JsonField

KeyEncryption

Designação Descrição Valor
customerManagedKeyEncryption Lista de todas as propriedades de encriptação de chaves geridas pelo cliente para o recurso. No entanto, apenas uma chave é suportada de cada vez. CustomerManagedKeyEncryption[] (obrigatório)

KeyEncryptionKeyIdentity

Designação Descrição Valor
tipo O tipo de identidade gerenciada usada. Apenas são suportados os UtilizadoresAtribuídos ou Identidades SistemaAtribuídas. 'SystemAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentityResourceId Azure Resource totalmente qualificado Id para a identidade atribuída pelo utilizador associada ao recurso. O Id de recurso assume o seguinte formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
cadeia (de caracteres)

PlataformaCapacidades

Designação Descrição Valor
confidentialCompute Representa as propriedades Azure Confidential Compute do recurso. Computação confidencial

ResourceSku

Designação Descrição Valor
Designação O nome da Sku do recurso. Os valores possíveis são: Básico ou Premium. 'Básico'
'Premium'

TopicProperties

Designação Descrição Valor
dataResidencyBoundary Limite de residência de dados do recurso. 'WithinGeopair'
'Dentroda Região'
disableLocalAuth Este booleano é usado para ativar ou desativar a autenticação local. O valor padrão é false. Quando a propriedade é definida como true, somente o token de ID do Microsoft Entra será usado para autenticar se o usuário tiver permissão para publicar no tópico. Bool
cifragem Propriedades de configuração de encriptação de chave do recurso tema. Esta é uma propriedade opcional. Quando não especificado, não é utilizada encriptação de chaves. KeyEncryption
eventTypeInfo Informações de tipo de evento para o tópico do usuário. Esta informação é fornecida pelo editor e pode ser usada pelo
assinante para visualizar diferentes tipos de eventos que são publicados.
EventTypeInfo
inboundIpRules Isso pode ser usado para restringir o tráfego de IPs específicos em vez de todos os IPs. Nota: Estes são considerados apenas se PublicNetworkAccess estiver ativado. InboundIpRule[]
inputSchema Isso determina o formato que a Grade de Eventos deve esperar para eventos de entrada publicados no tópico. 'CloudEventSchemaV1_0'
'CustomEventSchema'
'EventGridSchema'
inputSchemaMapping Isso permite a publicação usando esquemas de eventos personalizados. Um InputSchemaMapping pode ser especificado para mapear várias propriedades de um esquema de origem para várias propriedades necessárias do esquema EventGridEvent. InputSchemaMapping
mínimoTlsVersionAllowed Versão TLS mínima do editor autorizada a publicar neste tópico '1.0'
'1.1'
'1.2'
plataformaCapacidades Representa as capacidades da plataforma do recurso, incluindo propriedades relacionadas com o Azure Confidential Compute. PlataformaCapacidades
acesso à rede pública Isso determina se o tráfego é permitido na rede pública. Por padrão, ele está habilitado.
Você pode restringir ainda mais a IPs específicos configurando <seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.TopicProperties.InboundIpRules" />
'Desativado'
'Habilitado'
'SecuredByPerimeter'

TrackedResourceTags

Designação Descrição Valor

UserIdentityProperties

Designação Descrição Valor
ID do cliente O ID do cliente da identidade atribuída ao usuário. cadeia (de caracteres)
principalId O id principal da identidade atribuída ao usuário. cadeia (de caracteres)

Exemplos de uso

Modelos de início rápido do Azure

Os seguintes modelos de início rápido do Azure implantar esse tipo de recurso.

Modelo Descrição
Criar Tópico Personalizado da Grade de Eventos do Azure e de Assinatura de Fila

Implantar no Azure
Cria um tópico personalizado da Grade de Eventos do Azure e uma assinatura de fila de barramento de serviço. Modelo originalmente de autoria de Markus Meyer.
Criar tópico personalizado da grade de eventos do Azure e de assinatura

Implantar no Azure
Cria um tópico personalizado da Grade de Eventos do Azure e uma assinatura de webhook. Modelo originalmente criado por John Downs.
Criar de Subscrição de Tópico Personalizado da Grelha de Eventos do Azure

Implantar no Azure
Cria um tópico personalizado da Grade de Eventos do Azure e uma assinatura de tópico do barramento de serviço. Modelo originalmente de autoria de Markus Meyer.
Criar tópico personalizado da Grade de Eventos e manipulador de hub de eventos

Implantar no Azure
Cria um tópico personalizado da Grade de Eventos do Azure e um hub de eventos para manipular os eventos.
Tópico/assinatura personalizada da grade de eventos do Azure com o CloudEvents

Implantar no Azure
Cria um tópico personalizado da Grade de Eventos do Azure, uma assinatura de webhook com esquema CloudEvents e um Aplicativo Lógico como manipulador de eventos. Modelo originalmente criado por Justin Yoo.

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso de tópicos pode ser implantado com operações que visam:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.EventGrid/topics, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.EventGrid/topics@2025-07-15-preview"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    extendedLocation = {
      name = "string"
      type = "string"
    }
    kind = "string"
    properties = {
      dataResidencyBoundary = "string"
      disableLocalAuth = bool
      encryption = {
        customerManagedKeyEncryption = [
          {
            keyEncryptionKeyIdentity = {
              type = "string"
              userAssignedIdentityResourceId = "string"
            }
            keyEncryptionKeyUrl = "string"
          }
        ]
      }
      eventTypeInfo = {
        inlineEventTypes = {
          {customized property} = {
            dataSchemaUrl = "string"
            description = "string"
            displayName = "string"
            documentationUrl = "string"
          }
        }
        kind = "string"
      }
      inboundIpRules = [
        {
          action = "string"
          ipMask = "string"
        }
      ]
      inputSchema = "string"
      inputSchemaMapping = {
        inputSchemaMappingType = "string"
        // For remaining properties, see InputSchemaMapping objects
      }
      minimumTlsVersionAllowed = "string"
      platformCapabilities = {
        confidentialCompute = {
          mode = "string"
        }
      }
      publicNetworkAccess = "string"
    }
    sku = {
      name = "string"
    }
  }
}

Objetos InputSchemaMapping

Defina a propriedade inputSchemaMappingType para especificar o tipo de objeto.

Para Json, use:

{
  inputSchemaMappingType = "Json"
  properties = {
    dataVersion = {
      defaultValue = "string"
      sourceField = "string"
    }
    eventTime = {
      sourceField = "string"
    }
    eventType = {
      defaultValue = "string"
      sourceField = "string"
    }
    id = {
      sourceField = "string"
    }
    subject = {
      defaultValue = "string"
      sourceField = "string"
    }
    topic = {
      sourceField = "string"
    }
  }
}

Valores de propriedade

Microsoft.EventGrid/tópicos

Designação Descrição Valor
extendedLocalização Localização estendida do recurso. Localização Estendida
identidade Informações de identidade para o recurso. IdentityInfo
tipo Tipo de recurso. 'Azure'
'AzureArc'
localização Localização do recurso. string (obrigatório)
Designação O nome do recurso string (obrigatório)
propriedades Propriedades do tópico. TopicProperties
SKU O nível de preço de Sku para o tópico. ResourceSku
Etiquetas Tags de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft.EventGrid/topics@2025-07-15-preview"

Computação confidencial

Designação Descrição Valor
mode Esta propriedade especifica o modo da configuração Azure Confidential Compute.
Os valores possíveis são 'Desativado' ou 'Ativado'.
Este é um conjunto de propriedades imutável no momento da criação do recurso e não pode ser modificado posteriormente.
Ativar esta propriedade garante que as mensagens são processadas e armazenadas num ambiente Azure Confidential Compute.
'Desativado'
'Ativado' (obrigatório)

CustomerManagedKeyEncryption

Designação Descrição Valor
keyEncryptionKeyIdentity Toda a configuração de identidade para configurações de chave gerenciadas pelo cliente definindo qual identidade deve ser usada para autenticação no Cofre de Chaves. Esta é uma propriedade opcional.
Quando não especificado, será usada a identidade SystemAssigned.
KeyEncryptionKeyIdentity
keyEncryptionKeyUrl URL da chave de encriptação de chaves. Este URL pode ser versionado (por exemplo, https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78), ou não versionado (por exemplo,
https://contosovault.vault.azure.net/keys/contosokek. Quando é usada a URL versionada, esta versão da chave será usada pelo Event Grid Runtime, mesmo que seja rodada. É utilizador
responsabilidade de atualizar o URL com a nova versão atualizando o recurso do namespace. Quando o URL sem versão é usado, o Event Grid irá consultar e obter a versão mais recente e
ser usado automaticamente.
string (obrigatório)

EventTypeInfo

Designação Descrição Valor
inlineEventTypes Uma coleção de tipos de eventos embutidos para o recurso. As chaves de tipo de evento embutidas são do tipo string que representa o nome do evento.
Um exemplo de um nome de evento embutido válido é "Contoso.OrderCreated".
Os valores de tipo de evento embutido são do tipo InlineEventProperties e conterão informações adicionais para cada tipo de evento embutido.
EventTypeInfoInlineEventTypes
tipo O tipo de tipo de evento usado. 'Em linha'

EventTypeInfoInlineEventTypes

Designação Descrição Valor

Localização Estendida

Designação Descrição Valor
Designação Nome totalmente qualificado do local estendido. cadeia (de caracteres)
tipo Tipo de local estendido. cadeia (de caracteres)

IdentityInfo

Designação Descrição Valor
principalId A ID principal da identidade do recurso. cadeia (de caracteres)
inquilinoId A ID do locatário do recurso. cadeia (de caracteres)
tipo O tipo de identidade gerenciada usada. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada implicitamente e um conjunto de identidades atribuídas pelo usuário. O tipo 'Nenhum' removerá qualquer identidade. 'Nenhuma'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
identidades atribuídas pelo utilizador A lista de identidades de usuário associadas ao recurso. As referências de chave do dicionário de identidade do usuário serão ids de recurso ARM no formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
Esta propriedade não é usada no momento e está reservada para uso futuro.
IdentityInfoUserAssignedIdentities

IdentityInfoUserAssignedIdentities

Designação Descrição Valor

InboundIpRule

Designação Descrição Valor
ação Ação a executar com base na correspondência ou não correspondência da IpMask. 'Permitir'
ipMask Endereço IP na notação CIDR, por exemplo, 10.0.0.0/8. cadeia (de caracteres)

InlineEventProperties

Designação Descrição Valor
dataSchemaUrl O dataSchemaUrl para o evento inline. cadeia (de caracteres)
Descrição A descrição do evento embutido. cadeia (de caracteres)
nome de exibição O displayName para o evento embutido. cadeia (de caracteres)
documentationUrl O documentationUrl para o evento inline. cadeia (de caracteres)

InputSchemaMapping

Designação Descrição Valor
inputSchemaMappingType Defina como 'Json' para o tipo JsonInputSchemaMapping. 'Json' (obrigatório)

JsonField

Designação Descrição Valor
fonteField Nome de um campo no esquema de eventos de entrada que deve ser usado como a origem de um mapeamento. cadeia (de caracteres)

JsonFieldWithDefault

Designação Descrição Valor
valor padrão O valor padrão a ser usado para mapeamento quando um SourceField não é fornecido ou se não há nenhuma propriedade com o nome especificado na carga de evento JSON publicada. cadeia (de caracteres)
fonteField Nome de um campo no esquema de eventos de entrada que deve ser usado como a origem de um mapeamento. cadeia (de caracteres)

JsonInputSchemaMapping

Designação Descrição Valor
inputSchemaMappingType Tipo de mapeamento personalizado 'Json' (obrigatório)
propriedades Propriedades JSON do mapeamento do esquema de entrada JsonInputSchemaMappingProperties

JsonInputSchemaMappingProperties

Designação Descrição Valor
versão de dados As informações de mapeamento para a propriedade DataVersion do evento Event Grid. JsonFieldWithDefault
hora do evento As informações de mapeamento para a propriedade EventTime do evento Event Grid. JsonField
tipo de evento As informações de mapeamento para a propriedade EventType do evento Event Grid. JsonFieldWithDefault
ID As informações de mapeamento para a propriedade Id do evento Event Grid. JsonField
Assunto As informações de mapeamento para a propriedade Subject do evento Event Grid. JsonFieldWithDefault
tópico As informações de mapeamento para a propriedade Topic do evento Event Grid. JsonField

KeyEncryption

Designação Descrição Valor
customerManagedKeyEncryption Lista de todas as propriedades de encriptação de chaves geridas pelo cliente para o recurso. No entanto, apenas uma chave é suportada de cada vez. CustomerManagedKeyEncryption[] (obrigatório)

KeyEncryptionKeyIdentity

Designação Descrição Valor
tipo O tipo de identidade gerenciada usada. Apenas são suportados os UtilizadoresAtribuídos ou Identidades SistemaAtribuídas. 'SystemAssigned'
'UserAssigned' (obrigatório)
userAssignedIdentityResourceId Azure Resource totalmente qualificado Id para a identidade atribuída pelo utilizador associada ao recurso. O Id de recurso assume o seguinte formato:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
cadeia (de caracteres)

PlataformaCapacidades

Designação Descrição Valor
confidentialCompute Representa as propriedades Azure Confidential Compute do recurso. Computação confidencial

ResourceSku

Designação Descrição Valor
Designação O nome da Sku do recurso. Os valores possíveis são: Básico ou Premium. 'Básico'
'Premium'

TopicProperties

Designação Descrição Valor
dataResidencyBoundary Limite de residência de dados do recurso. 'WithinGeopair'
'Dentroda Região'
disableLocalAuth Este booleano é usado para ativar ou desativar a autenticação local. O valor padrão é false. Quando a propriedade é definida como true, somente o token de ID do Microsoft Entra será usado para autenticar se o usuário tiver permissão para publicar no tópico. Bool
cifragem Propriedades de configuração de encriptação de chave do recurso tema. Esta é uma propriedade opcional. Quando não especificado, não é utilizada encriptação de chaves. KeyEncryption
eventTypeInfo Informações de tipo de evento para o tópico do usuário. Esta informação é fornecida pelo editor e pode ser usada pelo
assinante para visualizar diferentes tipos de eventos que são publicados.
EventTypeInfo
inboundIpRules Isso pode ser usado para restringir o tráfego de IPs específicos em vez de todos os IPs. Nota: Estes são considerados apenas se PublicNetworkAccess estiver ativado. InboundIpRule[]
inputSchema Isso determina o formato que a Grade de Eventos deve esperar para eventos de entrada publicados no tópico. 'CloudEventSchemaV1_0'
'CustomEventSchema'
'EventGridSchema'
inputSchemaMapping Isso permite a publicação usando esquemas de eventos personalizados. Um InputSchemaMapping pode ser especificado para mapear várias propriedades de um esquema de origem para várias propriedades necessárias do esquema EventGridEvent. InputSchemaMapping
mínimoTlsVersionAllowed Versão TLS mínima do editor autorizada a publicar neste tópico '1.0'
'1.1'
'1.2'
plataformaCapacidades Representa as capacidades da plataforma do recurso, incluindo propriedades relacionadas com o Azure Confidential Compute. PlataformaCapacidades
acesso à rede pública Isso determina se o tráfego é permitido na rede pública. Por padrão, ele está habilitado.
Você pode restringir ainda mais a IPs específicos configurando <seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.TopicProperties.InboundIpRules" />
'Desativado'
'Habilitado'
'SecuredByPerimeter'

TrackedResourceTags

Designação Descrição Valor

UserIdentityProperties

Designação Descrição Valor
ID do cliente O ID do cliente da identidade atribuída ao usuário. cadeia (de caracteres)
principalId O id principal da identidade atribuída ao usuário. cadeia (de caracteres)

Exemplos de uso

Amostras Terraform

Um exemplo básico de implantação do EventGrid Topic.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "topic" {
  type      = "Microsoft.EventGrid/topics@2021-12-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      disableLocalAuth    = false
      inputSchema         = "EventGridSchema"
      inputSchemaMapping  = null
      publicNetworkAccess = "Enabled"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Módulos verificados do Azure

Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.

Módulo Descrição
Tópico da Grade de Eventos Tópico do módulo de recursos AVM para grade de eventos