Base de datos Microsoft.DocumentDBCuentas

Definición de recursos de Bicep

El tipo de recurso databaseAccounts se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de los recursos

Para crear un recurso Microsoft.DocumentDB/databaseAccounts, agregue el siguiente bicep a la plantilla.

resource symbolicname 'Microsoft.DocumentDB/databaseAccounts@2024-02-15-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  kind: 'string'
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  properties: {
    analyticalStorageConfiguration: {
      schemaType: 'string'
    }
    apiProperties: {
      serverVersion: 'string'
    }
    backupPolicy: {
      migrationState: {
        startTime: 'string'
        status: 'string'
        targetType: 'string'
      }
      type: 'string'
      // For remaining properties, see BackupPolicy objects
    }
    capabilities: [
      {
        name: 'string'
      }
    ]
    capacity: {
      totalThroughputLimit: int
    }
    connectorOffer: 'Small'
    consistencyPolicy: {
      defaultConsistencyLevel: 'string'
      maxIntervalInSeconds: int
      maxStalenessPrefix: int
    }
    cors: [
      {
        allowedHeaders: 'string'
        allowedMethods: 'string'
        allowedOrigins: 'string'
        exposedHeaders: 'string'
        maxAgeInSeconds: int
      }
    ]
    createMode: 'string'
    customerManagedKeyStatus: 'string'
    databaseAccountOfferType: 'Standard'
    defaultIdentity: 'string'
    defaultPriorityLevel: 'string'
    diagnosticLogSettings: {
      enableFullTextQuery: 'string'
    }
    disableKeyBasedMetadataWriteAccess: bool
    disableLocalAuth: bool
    enableAnalyticalStorage: bool
    enableAutomaticFailover: bool
    enableBurstCapacity: bool
    enableCassandraConnector: bool
    enableFreeTier: bool
    enableMaterializedViews: bool
    enableMultipleWriteLocations: bool
    enablePartitionMerge: bool
    enablePerRegionPerPartitionAutoscale: bool
    enablePriorityBasedExecution: bool
    ipRules: [
      {
        ipAddressOrRange: 'string'
      }
    ]
    isVirtualNetworkFilterEnabled: bool
    keyVaultKeyUri: 'string'
    locations: [
      {
        failoverPriority: int
        isZoneRedundant: bool
        locationName: 'string'
      }
    ]
    minimalTlsVersion: 'string'
    networkAclBypass: 'string'
    networkAclBypassResourceIds: [
      'string'
    ]
    publicNetworkAccess: 'string'
    restoreParameters: {
      databasesToRestore: [
        {
          collectionNames: [
            'string'
          ]
          databaseName: 'string'
        }
      ]
      gremlinDatabasesToRestore: [
        {
          databaseName: 'string'
          graphNames: [
            'string'
          ]
        }
      ]
      restoreMode: 'PointInTime'
      restoreSource: 'string'
      restoreTimestampInUtc: 'string'
      restoreWithTtlDisabled: bool
      sourceBackupLocation: 'string'
      tablesToRestore: [
        'string'
      ]
    }
    virtualNetworkRules: [
      {
        id: 'string'
        ignoreMissingVNetServiceEndpoint: bool
      }
    ]
  }
}

Objetos BackupPolicy

Establezca la propiedad type para especificar el tipo de objeto.

Para Continuo, use:

  type: 'Continuous'
  continuousModeProperties: {
    tier: 'string'
  }

Para Periodic, use:

  type: 'Periodic'
  periodicModeProperties: {
    backupIntervalInMinutes: int
    backupRetentionIntervalInHours: int
    backupStorageRedundancy: 'string'
  }

Valores de propiedad

databaseAccounts

Nombre Descripción Value
name El nombre del recurso string (obligatorio)

Límite de caracteres: 3-44

Caracteres válidos:
Letras minúsculas, números y guiones.

Comience con una letra minúscula o un número.

El nombre del recurso debe ser único en Azure.
ubicación Ubicación del grupo de recursos al que pertenece el recurso. string
etiquetas Las etiquetas son una lista de pares clave-valor que describen el recurso. Estas etiquetas pueden utilizarse para visualizar y agrupar este recurso a través de grupos de recursos. Se puede proporcionar un máximo de 15 etiquetas para un recurso. Cada etiqueta debe tener una clave no superior a 128 caracteres y un valor no superior a 256 caracteres. Por ejemplo, la experiencia predeterminada para un tipo de plantilla se establece con "defaultExperience": "Cassandra". Los valores actuales "defaultExperience" también incluyen "Table", "Graph", "DocumentDB" y "MongoDB". Diccionario de nombres y valores de etiqueta. Consulte Etiquetas en plantillas.
kind Indica el tipo de cuenta de base de datos. Esto solo se puede establecer en la creación de la cuenta de base de datos. 'GlobalDocumentDB'
"MongoDB"
'Analizar'
identidad Identidad del recurso. ManagedServiceIdentity
properties Propiedades para crear y actualizar cuentas de base de datos de Azure Cosmos DB. DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... (obligatorio)

ManagedServiceIdentity

Nombre Descripción Value
type 'Ninguno'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned': el tipo de identidad que se usa para el recurso. El tipo "SystemAssigned", UserAssigned incluye una identidad creada implícitamente y un conjunto de identidades asignadas por el usuario. El tipo "None" quitará las identidades del servicio.
userAssignedIdentities Lista de identidades de usuario asociadas al recurso. Las referencias de clave de diccionario de identidades de usuario serán identificadores de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} Components1Jq1T4ISchemasManagedserviceidentityProper...

Components1Jq1T4ISchemasManagedserviceidentityProper...

Este objeto no contiene ninguna propiedad que se va a establecer durante la implementación. Todas las propiedades son ReadOnly.

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

Nombre Descripción Valor
analyticalStorageConfiguration Propiedades específicas del almacenamiento analítico. AnalyticalStorageConfiguration
apiProperties Propiedades específicas de la API. Actualmente, solo se admite para la API de MongoDB. ApiProperties
backupPolicy Objeto que representa la directiva para realizar copias de seguridad en una cuenta. BackupPolicy
capabilities Lista de funcionalidades de Cosmos DB para la cuenta Funcionalidad[]
capacity Objeto que representa todas las propiedades relacionadas con la aplicación de capacidad en una cuenta. Capacity
connectorOffer Tipo de oferta del conector cassandra para la cuenta de C* de base de datos de Cosmos DB. "Pequeño"
consistencyPolicy La directiva de coherencia de la cuenta de Cosmos DB. ConsistencyPolicy
cors Directiva de CORS para la cuenta de base de datos de Cosmos DB. CorsPolicy[]
createMode Enumeración para indicar el modo de creación de la cuenta. 'Default'
'PointInTimeRestore'
'Restaurar'
customerManagedKeyStatus Indica el estado de la característica Clave administrada por el cliente en la cuenta. En caso de que haya errores, la propiedad proporciona instrucciones para solucionar problemas. string
databaseAccountOfferType Tipo de oferta para la base de datos 'Estándar' (obligatorio)
defaultIdentity La identidad predeterminada para acceder al almacén de claves usado en características como las claves administradas por el cliente. Los usuarios deben establecer explícitamente la identidad predeterminada. Puede ser "FirstPartyIdentity", "SystemAssignedIdentity" y mucho más. string
defaultPriorityLevel Enumeración para indicar el nivel de prioridad predeterminado de la solicitud para la ejecución basada en prioridad. "Alto"
"Bajo"
diagnosticLogSettings Objeto que representa la configuración del registro de diagnóstico diferente para la cuenta de Cosmos DB. DiagnosticLogSettings
disableKeyBasedMetadataWriteAccess Deshabilitar las operaciones de escritura en recursos de metadatos (bases de datos, contenedores y rendimiento) mediante claves de cuenta bool
disableLocalAuth No participar en la autenticación local y asegurarse de que solo se pueden usar MSI y AAD exclusivamente para la autenticación. bool
enableAnalyticalStorage Marca para indicar si se va a habilitar el análisis de almacenamiento. bool
enableAutomaticFailover Habilita la conmutación automática por error de la región de escritura en el caso poco frecuente de que la región no esté disponible debido a una interrupción. La conmutación automática por error dará lugar a una nueva región de escritura para la cuenta y se elige en función de las prioridades de conmutación por error configuradas para la cuenta. bool
enableBurstCapacity Marca para indicar la habilitación o deshabilitación de la característica De vista previa de capacidad de ráfaga en la cuenta bool
enableCassandraConnector Habilita el conector cassandra en la cuenta de C* de Cosmos DB. bool
enableFreeTier Marca para indicar si el nivel Gratis está habilitado. bool
enableMaterializedViews Marca para indicar si se habilita MaterializedViews en la cuenta de Cosmos DB bool
enableMultipleWriteLocations Permite que la cuenta escriba en varias ubicaciones. bool
enablePartitionMerge Marca para indicar la habilitación o deshabilitación de la característica de combinación de particiones en la cuenta bool
enablePerRegionPerPartitionAutoscale Marca para indicar la habilitación o deshabilitación de Per-Region característica vista previa de escalabilidad automática por partición en la cuenta bool
enablePriorityBasedExecution Marca para indicar la habilitación o deshabilitación de la característica versión preliminar de ejecución basada en prioridad en la cuenta bool
ipRules Lista de IpRules. IpAddressOrRange[]
isVirtualNetworkFilterEnabled Marca para indicar si habilitar o deshabilitar Virtual Network reglas de ACL. bool
keyVaultKeyUri URI del almacén de claves string
locations Matriz que contiene las ubicaciones de georeplicación habilitadas para la cuenta de Cosmos DB. Location[] (obligatorio)
minimalTlsVersion Indica la versión mínima permitida de Tls. El valor predeterminado es Tls 1.0, excepto cassandra y mongo API, que solo funcionan con Tls 1.2. 'Tls'
'Tls11'
'Tls12'
networkAclBypass "AzureServices"
"Ninguno": indica qué servicios pueden omitir las comprobaciones de firewall.
networkAclBypassResourceIds Matriz que contiene los identificadores de recurso para la omisión de Acl de red para la cuenta de Cosmos DB. string[]
publicNetworkAccess Indica si se permiten solicitudes de red pública 'Deshabilitado'
'Habilitado'
"SecuredByPerimeter"
restoreParameters Parámetros para indicar la información sobre la restauración. RestoreParameters
virtualNetworkRules Lista de Virtual Network reglas de ACL configuradas para la cuenta de Cosmos DB. VirtualNetworkRule[]

AnalyticalStorageConfiguration

Nombre Descripción Valor
schemaType Describe los tipos de esquema para el almacenamiento analítico. 'FullFidelity'
'WellDefined'

ApiProperties

Nombre Descripción Valor
serverVersion Describe ServerVersion de una cuenta de MongoDB. '3.2'
'3.6'
'4.0'
'4.2'

BackupPolicy

Nombre Descripción Valor
migrationState Objeto que representa el estado de la migración entre las directivas de copia de seguridad. BackupPolicyMigrationState
tipo Establecimiento del tipo de objeto Continuo
Periódico (obligatorio)

BackupPolicyMigrationState

Nombre Descripción Valor
startTime Hora en la que se inició la migración de directivas de copia de seguridad (formato ISO-8601). string
status Describe el estado de la migración entre los tipos de directiva de copia de seguridad. "Completado"
'Failed'
'InProgress'
'No válido'
targetType Describe el tipo de directiva de copia de seguridad de destino de la migración de directivas de copia de seguridad. 'Continuous'
'Periódico'

ContinuousModeBackupPolicy

Nombre Descripción Value
type Describe el modo de copias de seguridad. 'Continuous' (obligatorio)
continuousModeProperties Valores de configuración para la copia de seguridad en modo continuo ContinuousModeProperties

ContinuousModeProperties

Nombre Descripción Valor
Nivel: Enumeración para indicar el tipo de modo de copia de seguridad continuos "Continuous30Days"
"Continuous7Days"

PeriodicModeBackupPolicy

Nombre Descripción Value
type Describe el modo de copias de seguridad. 'Periodic' (obligatorio)
periodicModeProperties Valores de configuración para la copia de seguridad en modo periódico PeriodicModeProperties

PeriodicModeProperties

Nombre Descripción Valor
backupIntervalInMinutes Entero que representa el intervalo en minutos entre dos copias de seguridad. int

Restricciones:
Valor mínimo = 0
backupRetentionIntervalInHours Entero que representa el tiempo (en horas) que conserva cada copia de seguridad. int

Restricciones:
Valor mínimo = 0
backupStorageRedundancy Enumeración para indicar el tipo de residencia de copia de seguridad 'Geo'
'Local'
'Zona'

Capacidad

Nombre Descripción Value
name Nombre de la funcionalidad de Cosmos DB. Por ejemplo, "name": "EnableCassandra". Los valores actuales también incluyen "EnableTable" y "EnableGremlin". string

Capacity

Nombre Descripción Valor
totalThroughputLimit Límite de rendimiento total impuesto en la cuenta. Un valor totalThroughputLimit de 2000 impone un límite estricto de rendimiento máximo que se puede aprovisionar en esa cuenta para ser 2000. Un valor totalThroughputLimit de -1 indica que no hay límites en el aprovisionamiento del rendimiento. int

ConsistencyPolicy

Nombre Descripción Valor
defaultConsistencyLevel El nivel de coherencia predeterminado y los valores de configuración de la cuenta de Cosmos DB. 'BoundedStaleness'
"ConsistentPrefix"
'Eventual'
'Sesión'
'Fuerte' (obligatorio)
maxIntervalInSeconds Cuando se usa con el nivel de coherencia Obsolescencia limitada, este valor representa la cantidad de tiempo de obsolescencia (en segundos) tolerada. El intervalo aceptado para este valor es de 5 a 86400. Obligatorio cuando defaultConsistencyPolicy se establece en "BoundedStaleness". int

Restricciones:
Valor mínimo = 5
Valor máximo = 86400
maxStalenessPrefix Cuando se usa con el nivel de coherencia obsolescencia limitada, este valor representa el número de solicitudes obsoletas toleradas. El intervalo aceptado para este valor es de 1 - 2.147.483.647. Obligatorio cuando defaultConsistencyPolicy se establece en "BoundedStaleness". int

Restricciones:
Valor mínimo = 1
Valor máximo = 2147483647

CorsPolicy

Nombre Descripción Valor
allowedHeaders los encabezados de solicitud que el dominio de origen puede especificar en la solicitud de CORS. string
allowedMethods los métodos (verbos de solicitud HTTP) que el dominio de origen puede usar para una solicitud de CORS. string
allowedOrigins Los dominios de origen que pueden realizar una solicitud en el servicio a través de CORS. string (obligatorio)
exposedHeaders los encabezados de respuesta que se pueden enviar en la respuesta a la solicitud de CORS y que el explorador expone al emisor de la solicitud. string
maxAgeInSeconds el tiempo máximo que un explorador debe almacenar en la memoria caché la solicitud preparatoria OPTIONS. int

Restricciones:
Valor mínimo = 1
Valor máximo = 2147483647

DiagnosticLogSettings

Nombre Descripción Valor
enableFullTextQuery 'False'
'Ninguno'
'True': describa el nivel de detalle con el que se van a registrar las consultas.

IpAddressOrRange

Nombre Descripción Valor
ipAddressOrRange Una sola dirección IPv4 o un único intervalo de direcciones IPv4 en formato CIDR. Las direcciones IP proporcionadas deben tener un formato correcto y no se pueden incluir en uno de los siguientes intervalos: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, ya que no son aplicables por el filtro de direcciones IP. Ejemplo de entradas válidas: "23.40.210.245" o "23.40.210.0/8". string

Location

Nombre Descripción Valor
failoverPriority Prioridad de conmutación por error de la región. Una prioridad de conmutación por error de 0 indica una región de escritura. Valor máximo de una prioridad de conmutación por error = (número total de regiones - 1). Los valores de prioridad de conmutación por error deben ser únicos para cada una de las regiones en las que existe la cuenta de base de datos. int

Restricciones:
Valor mínimo = 0
isZoneRedundant Marca para indicar si esta región es una región availabilityZone o no bool
locationName El nombre de la región. string

RestoreParameters

Nombre Descripción Valor
databasesToRestore Lista de bases de datos específicas disponibles para la restauración. DatabaseRestoreResource[]
gremlinDatabasesToRestore Lista de bases de datos de Gremlin específicas disponibles para la restauración. GremlinDatabaseRestoreResource[]
restoreMode Describe el modo de restauración. 'PointInTime'
restoreSource Identificador de la cuenta de base de datos restaurable desde la que se debe iniciar la restauración. Por ejemplo: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} string
restoreTimestampInUtc Hora a la que se debe restaurar la cuenta (formato ISO-8601). string
restoreWithTtlDisabled Especifica si la cuenta restaurada tendrá deshabilitado el período de vida tras la restauración correcta. bool
sourceBackupLocation Ubicación de copia de seguridad de origen para la restauración. string
tablesToRestore Lista de tablas específicas disponibles para la restauración. string[]

DatabaseRestoreResource

Nombre Descripción Valor
collectionNames Los nombres de las colecciones disponibles para restaurar. string[]
databaseName Nombre de la base de datos disponible para restaurar. string

GremlinDatabaseRestoreResource

Nombre Descripción Valor
databaseName Nombre de la base de datos gremlin disponible para la restauración. string
graphNames Nombres de los gráficos disponibles para la restauración. string[]

VirtualNetworkRule

Nombre Descripción Value
id Identificador de recurso de una subred, por ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}. string
ignoreMissingVNetServiceEndpoint Cree una regla de firewall antes de que la red virtual tenga habilitado el punto de conexión de servicio de red virtual. bool

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
CI/CD mediante Jenkins en Azure Container Service (AKS)

Implementación en Azure
Los contenedores facilitan la compilación e implementación continua de las aplicaciones. Mediante la orquestación de la implementación de esos contenedores mediante Kubernetes en Azure Container Service, puede lograr clústeres replicables y administrables de contenedores. Mediante la configuración de una compilación continua para producir las imágenes y la orquestación de contenedores, puede aumentar la velocidad y la confiabilidad de la implementación.
Aplicación web con una SQL Database, Azure Cosmos DB, Azure Search

Implementación en Azure
Esta plantilla aprovisiona una aplicación web, una SQL Database, Azure Cosmos DB, Azure Search y Application Insights.
Creación de una cuenta de Azure Cosmos DB para Cassandra API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Cassandra API en dos regiones con un espacio de claves y una tabla con rendimiento dedicado.
Creación de una cuenta de Azure Cosmos DB de escalado automático para Cassandra API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Cassandra API en dos regiones con un espacio de claves y una tabla con rendimiento de escalado automático.
Creación de una cuenta de Azure CosmosDB

Implementación en Azure
Esta plantilla de ARM está intención de crear una cuenta de CosmosDB rápidamente con los valores mínimos necesarios.
Creación de una cuenta de Azure Cosmos DB en varias regiones

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para cualquier tipo de API de base de datos con una región primaria y secundaria que elija el nivel de coherencia y el tipo de conmutación por error.
Creación de una cuenta de Azure Cosmos DB de nivel gratis

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB de nivel gratuito para SQL API con una base de datos con rendimiento compartido y contenedor.
Creación de una cuenta de Azure Cosmos DB para Gremlin API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Gremlin API en dos regiones con una base de datos y un grafo mediante el rendimiento dedicado.
Creación de una cuenta de Azure Cosmos DB para el escalado automático de Gremlin API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Gremlin API en dos regiones con una base de datos y un grafo mediante el rendimiento de escalado automático.
Creación de una cuenta de Azure Cosmos para mongoDB API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para MongoDB API 4.2 en dos regiones mediante el rendimiento compartido y dedicado con dos colecciones.
Creación de una cuenta de Azure Cosmos para la escalabilidad automática de mongoDB API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para MongoDB API 4.2 en dos regiones mediante el rendimiento de escalado automático compartido y dedicado.
Creación de una cuenta de Azure Cosmos DB con un punto de conexión privado

Implementación en Azure
Esta plantilla creará una cuenta de Cosmos, una red virtual y un punto de conexión privado que exponga la cuenta de Cosmos a la red virtual.
Creación de una cuenta de Azure Cosmos DB para Core (SQL) API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos para Core (SQL) API con una base de datos y un contenedor con rendimiento con varias otras opciones.
API de SQL de la cuenta de Azure Cosmos DB con almacén analítico

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos para Core (SQL) API con una base de datos y un contenedor configurados con almacén analítico.
Creación de una API de SQL de cuenta de Azure Cosmos DB con escalabilidad automática

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos para Core (SQL) API con una base de datos y un contenedor con rendimiento de escalabilidad automática con varias otras opciones.
Creación de procedimientos almacenados de la API de Azure Cosmos DB Core (SQL)

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Core (SQL) API y un contenedor con un procedimiento almacenado, un desencadenador y una función definida por el usuario.
Creación de una cuenta mínima de Azure Cosmos DB para Core (SQL) API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para core (SQL) API mientras solo se especifican las propiedades de recursos necesarias mínimas.
Creación de Azure Cosmos con SQL API y varios contenedores

Implementación en Azure
La plantilla crea un contenedor de Cosmos con una API de SQL y permite agregar contenedores de mulitple.
Creación de una cuenta sql de Azure Cosmos DB con RBAC del plano de datos

Implementación en Azure
Esta plantilla creará una cuenta de SQL Cosmos, una definición de rol mantenida de forma nativa y una asignación de roles mantenida de forma nativa para una identidad de AAD.
Creación de una cuenta de Azure Cosmos DB sin servidor para SQL API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB sin servidor para core (SQL).
Creación de una cuenta de Azure Cosmos para Table API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Table API en dos regiones y una sola tabla con rendimiento aprovisionado.
Creación de una cuenta de Azure Cosmos para Table API con escalabilidad automática

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Table API en dos regiones y una sola tabla con rendimiento de escalado automático.
Creación de una cuenta de Azure Cosmos táctil cero y una aplicación web de Azure

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos, inserta el punto de conexión y las claves de Cosmos DB en la configuración de Azure Web App y, a continuación, implementa una aplicación web asp MVC desde GitHub.
Creación de una cuenta de Cosmos DB con Microsoft Defender habilitado

Implementación en Azure
Con esta plantilla de ARM, puede implementar una cuenta de Azure Cosmos DB con Microsoft Defender para Azure Cosmos DB habilitado. Microsoft Defender para Azure Cosmos DB es una capa de seguridad nativa de Azure que detecta intentos de aprovechar una vulnerabilidad de seguridad de las bases de datos de las cuentas de Azure Cosmos DB. Microsoft Defender para Azure Cosmos DB detecta posibles inyecciones de SQL, actores incorrectos conocidos basados en inteligencia sobre amenazas de Microsoft, patrones de acceso sospechosos y posibles aprovechamientos de la base de datos a través de identidades comprometidas o usuarios internos malintencionados.
Implementación de Azure Data Explorer DB con conexión de Cosmos DB

Implementación en Azure
Implemente Azure Data Explorer DB con la conexión de Cosmos DB.
Cuenta de Azure Cosmos DB con aplicación web

Implementación en Azure
Esta plantilla implementa una cuenta de Azure Cosmos DB, un plan de App Service y crea una aplicación web en el plan de App Service. También agrega dos configuraciones de aplicación a la aplicación web que hacen referencia al punto de conexión de la cuenta de Azure Cosmos DB. De esta manera, las soluciones implementadas en la aplicación web pueden conectarse al punto de conexión de la cuenta de Azure Cosmos DB mediante esa configuración.

Definición de recursos de plantilla de ARM

El tipo de recurso databaseAccounts se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de los recursos

Para crear un recurso Microsoft.DocumentDB/databaseAccounts, agregue el siguiente json a la plantilla.

{
  "type": "Microsoft.DocumentDB/databaseAccounts",
  "apiVersion": "2024-02-15-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "kind": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {}
    }
  },
  "properties": {
    "analyticalStorageConfiguration": {
      "schemaType": "string"
    },
    "apiProperties": {
      "serverVersion": "string"
    },
    "backupPolicy": {
      "migrationState": {
        "startTime": "string",
        "status": "string",
        "targetType": "string"
      },
      "type": "string"
      // For remaining properties, see BackupPolicy objects
    },
    "capabilities": [
      {
        "name": "string"
      }
    ],
    "capacity": {
      "totalThroughputLimit": "int"
    },
    "connectorOffer": "Small",
    "consistencyPolicy": {
      "defaultConsistencyLevel": "string",
      "maxIntervalInSeconds": "int",
      "maxStalenessPrefix": "int"
    },
    "cors": [
      {
        "allowedHeaders": "string",
        "allowedMethods": "string",
        "allowedOrigins": "string",
        "exposedHeaders": "string",
        "maxAgeInSeconds": "int"
      }
    ],
    "createMode": "string",
    "customerManagedKeyStatus": "string",
    "databaseAccountOfferType": "Standard",
    "defaultIdentity": "string",
    "defaultPriorityLevel": "string",
    "diagnosticLogSettings": {
      "enableFullTextQuery": "string"
    },
    "disableKeyBasedMetadataWriteAccess": "bool",
    "disableLocalAuth": "bool",
    "enableAnalyticalStorage": "bool",
    "enableAutomaticFailover": "bool",
    "enableBurstCapacity": "bool",
    "enableCassandraConnector": "bool",
    "enableFreeTier": "bool",
    "enableMaterializedViews": "bool",
    "enableMultipleWriteLocations": "bool",
    "enablePartitionMerge": "bool",
    "enablePerRegionPerPartitionAutoscale": "bool",
    "enablePriorityBasedExecution": "bool",
    "ipRules": [
      {
        "ipAddressOrRange": "string"
      }
    ],
    "isVirtualNetworkFilterEnabled": "bool",
    "keyVaultKeyUri": "string",
    "locations": [
      {
        "failoverPriority": "int",
        "isZoneRedundant": "bool",
        "locationName": "string"
      }
    ],
    "minimalTlsVersion": "string",
    "networkAclBypass": "string",
    "networkAclBypassResourceIds": [ "string" ],
    "publicNetworkAccess": "string",
    "restoreParameters": {
      "databasesToRestore": [
        {
          "collectionNames": [ "string" ],
          "databaseName": "string"
        }
      ],
      "gremlinDatabasesToRestore": [
        {
          "databaseName": "string",
          "graphNames": [ "string" ]
        }
      ],
      "restoreMode": "PointInTime",
      "restoreSource": "string",
      "restoreTimestampInUtc": "string",
      "restoreWithTtlDisabled": "bool",
      "sourceBackupLocation": "string",
      "tablesToRestore": [ "string" ]
    },
    "virtualNetworkRules": [
      {
        "id": "string",
        "ignoreMissingVNetServiceEndpoint": "bool"
      }
    ]
  }
}

Objetos BackupPolicy

Establezca la propiedad type para especificar el tipo de objeto.

Para Continuo, use:

  "type": "Continuous",
  "continuousModeProperties": {
    "tier": "string"
  }

Para Periodic, use:

  "type": "Periodic",
  "periodicModeProperties": {
    "backupIntervalInMinutes": "int",
    "backupRetentionIntervalInHours": "int",
    "backupStorageRedundancy": "string"
  }

Valores de propiedad

databaseAccounts

Nombre Descripción Value
type Tipo de recurso 'Microsoft.DocumentDB/databaseAccounts'
apiVersion La versión de la API de recursos "2024-02-15-preview"
name El nombre del recurso string (obligatorio)

Límite de caracteres: 3-44

Caracteres válidos:
Letras minúsculas, números y guiones.

Comience con una letra minúscula o un número.

El nombre del recurso debe ser único en Azure.
ubicación Ubicación del grupo de recursos al que pertenece el recurso. string
etiquetas Las etiquetas son una lista de pares clave-valor que describen el recurso. Estas etiquetas pueden utilizarse para visualizar y agrupar este recurso a través de grupos de recursos. Se puede proporcionar un máximo de 15 etiquetas para un recurso. Cada etiqueta debe tener una clave no superior a 128 caracteres y un valor no superior a 256 caracteres. Por ejemplo, la experiencia predeterminada para un tipo de plantilla se establece con "defaultExperience": "Cassandra". Los valores actuales "defaultExperience" también incluyen "Table", "Graph", "DocumentDB" y "MongoDB". Diccionario de nombres y valores de etiqueta. Consulte Etiquetas en plantillas.
kind Indica el tipo de cuenta de base de datos. Esto solo se puede establecer en la creación de la cuenta de base de datos. "GlobalDocumentDB"
"MongoDB"
'Parse'
identidad Identidad del recurso. ManagedServiceIdentity
properties Propiedades para crear y actualizar cuentas de base de datos de Azure Cosmos DB. DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... (obligatorio)

ManagedServiceIdentity

Nombre Descripción Value
type 'Ninguno'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned': el tipo de identidad que se usa para el recurso. El tipo "SystemAssigned",UserAssigned" incluye una identidad creada implícitamente y un conjunto de identidades asignadas por el usuario. El tipo "None" quitará las identidades del servicio.
userAssignedIdentities Lista de identidades de usuario asociadas al recurso. Las referencias de clave de diccionario de identidades de usuario serán identificadores de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} Components1Jq1T4ISchemasManagedserviceidentityProper...

Components1Jq1T4ISchemasManagedserviceidentityProper...

Este objeto no contiene ninguna propiedad que se va a establecer durante la implementación. Todas las propiedades son ReadOnly.

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

Nombre Descripción Valor
analyticalStorageConfiguration Propiedades específicas del almacenamiento analítico. AnalyticalStorageConfiguration
apiProperties Propiedades específicas de la API. Actualmente, solo se admite para la API de MongoDB. ApiProperties
backupPolicy Objeto que representa la directiva para realizar copias de seguridad en una cuenta. BackupPolicy
capabilities Lista de funcionalidades de Cosmos DB para la cuenta Funcionalidad[]
capacity Objeto que representa todas las propiedades relacionadas con la aplicación de capacidad en una cuenta. Capacity
connectorOffer Tipo de oferta del conector cassandra para la cuenta de C* de base de datos de Cosmos DB. "Pequeño"
consistencyPolicy La directiva de coherencia de la cuenta de Cosmos DB. ConsistencyPolicy
cors Directiva de CORS para la cuenta de base de datos de Cosmos DB. CorsPolicy[]
createMode Enumeración para indicar el modo de creación de la cuenta. 'Default'
'PointInTimeRestore'
'Restaurar'
customerManagedKeyStatus Indica el estado de la característica Clave administrada por el cliente en la cuenta. En caso de que haya errores, la propiedad proporciona instrucciones para solucionar problemas. string
databaseAccountOfferType Tipo de oferta para la base de datos 'Estándar' (obligatorio)
defaultIdentity La identidad predeterminada para acceder al almacén de claves usado en características como las claves administradas por el cliente. Los usuarios deben establecer explícitamente la identidad predeterminada. Puede ser "FirstPartyIdentity", "SystemAssignedIdentity" y mucho más. string
defaultPriorityLevel Enumeración para indicar el nivel de prioridad predeterminado de la solicitud para la ejecución basada en prioridad. "Alto"
"Bajo"
diagnosticLogSettings Objeto que representa la configuración del registro de diagnóstico diferente para la cuenta de Cosmos DB. DiagnosticLogSettings
disableKeyBasedMetadataWriteAccess Deshabilitar las operaciones de escritura en recursos de metadatos (bases de datos, contenedores y rendimiento) mediante claves de cuenta bool
disableLocalAuth No participar en la autenticación local y asegurarse de que solo se pueden usar MSI y AAD exclusivamente para la autenticación. bool
enableAnalyticalStorage Marca para indicar si se va a habilitar el análisis de almacenamiento. bool
enableAutomaticFailover Habilita la conmutación automática por error de la región de escritura en el caso poco frecuente de que la región no esté disponible debido a una interrupción. La conmutación automática por error dará lugar a una nueva región de escritura para la cuenta y se elige en función de las prioridades de conmutación por error configuradas para la cuenta. bool
enableBurstCapacity Marca para indicar la habilitación o deshabilitación de la característica De vista previa de capacidad de ráfaga en la cuenta bool
enableCassandraConnector Habilita el conector cassandra en la cuenta de C* de Cosmos DB. bool
enableFreeTier Marca para indicar si el nivel Gratis está habilitado. bool
enableMaterializedViews Marca para indicar si se habilita MaterializedViews en la cuenta de Cosmos DB bool
enableMultipleWriteLocations Permite que la cuenta escriba en varias ubicaciones. bool
enablePartitionMerge Marca para indicar la habilitación o deshabilitación de la característica de combinación de particiones en la cuenta bool
enablePerRegionPerPartitionAutoscale Marca para indicar la habilitación o deshabilitación de Per-Region característica vista previa de escalabilidad automática por partición en la cuenta bool
enablePriorityBasedExecution Marca para indicar la habilitación o deshabilitación de la característica versión preliminar de ejecución basada en prioridad en la cuenta bool
ipRules Lista de IpRules. IpAddressOrRange[]
isVirtualNetworkFilterEnabled Marca para indicar si habilitar o deshabilitar Virtual Network reglas de ACL. bool
keyVaultKeyUri URI del almacén de claves string
locations Matriz que contiene las ubicaciones de georeplicación habilitadas para la cuenta de Cosmos DB. Location[] (obligatorio)
minimalTlsVersion Indica la versión mínima permitida de Tls. El valor predeterminado es Tls 1.0, excepto cassandra y mongo API, que solo funcionan con Tls 1.2. 'Tls'
'Tls11'
'Tls12'
networkAclBypass "AzureServices"
"Ninguno": indica qué servicios pueden omitir las comprobaciones de firewall.
networkAclBypassResourceIds Matriz que contiene los identificadores de recurso para la omisión de Acl de red para la cuenta de Cosmos DB. string[]
publicNetworkAccess Indica si se permiten solicitudes de red pública 'Deshabilitado'
'Habilitado'
"SecuredByPerimeter"
restoreParameters Parámetros para indicar la información sobre la restauración. RestoreParameters
virtualNetworkRules Lista de Virtual Network reglas de ACL configuradas para la cuenta de Cosmos DB. VirtualNetworkRule[]

AnalyticalStorageConfiguration

Nombre Descripción Valor
schemaType Describe los tipos de esquema para el almacenamiento analítico. 'FullFidelity'
'WellDefined'

ApiProperties

Nombre Descripción Valor
serverVersion Describe ServerVersion de una cuenta de MongoDB. '3.2'
'3.6'
'4.0'
'4.2'

BackupPolicy

Nombre Descripción Valor
migrationState Objeto que representa el estado de la migración entre las directivas de copia de seguridad. BackupPolicyMigrationState
tipo Establecimiento del tipo de objeto Continuo
Periódico (obligatorio)

BackupPolicyMigrationState

Nombre Descripción Valor
startTime Hora en la que se inició la migración de directivas de copia de seguridad (formato ISO-8601). string
status Describe el estado de la migración entre los tipos de directiva de copia de seguridad. 'Completado'
'Error'
'InProgress'
'No válido'
targetType Describe el tipo de directiva de copia de seguridad de destino de la migración de directivas de copia de seguridad. 'Continuous'
'Periódico'

ContinuousModeBackupPolicy

Nombre Descripción Value
type Describe el modo de copias de seguridad. 'Continuous' (obligatorio)
continuousModeProperties Valores de configuración para la copia de seguridad en modo continuo ContinuousModeProperties

ContinuousModeProperties

Nombre Descripción Valor
Nivel: Enumeración para indicar el tipo de modo de copia de seguridad continuos 'Continuous30Days'
'Continuous7Days'

PeriodicModeBackupPolicy

Nombre Descripción Value
type Describe el modo de copias de seguridad. 'Periodic' (obligatorio)
periodicModeProperties Valores de configuración para la copia de seguridad en modo periódico PeriodicModeProperties

PeriodicModeProperties

Nombre Descripción Valor
backupIntervalInMinutes Entero que representa el intervalo en minutos entre dos copias de seguridad int

Restricciones:
Valor mínimo = 0
backupRetentionIntervalInHours Entero que representa el tiempo (en horas) que se conserva cada copia de seguridad. int

Restricciones:
Valor mínimo = 0
backupStorageRedundancy Enumeración para indicar el tipo de residencia de copia de seguridad 'Geo'
'Local'
'Zona'

Capacidad

Nombre Descripción Value
name Nombre de la funcionalidad de Cosmos DB. Por ejemplo, "name": "EnableCassandra". Los valores actuales también incluyen "EnableTable" y "EnableGremlin". string

Capacity

Nombre Descripción Valor
totalThroughputLimit Límite total de rendimiento impuesto en la cuenta. Un valor totalThroughputLimit de 2000 impone un límite estricto de rendimiento máximo que se puede aprovisionar en esa cuenta para ser 2000. Un valor totalThroughputLimit de -1 indica que no hay límites en el aprovisionamiento del rendimiento. int

ConsistencyPolicy

Nombre Descripción Valor
defaultConsistencyLevel Los valores de configuración y nivel de coherencia predeterminados de la cuenta de Cosmos DB. 'BoundedStaleness'
'ConsistentPrefix'
'Eventual'
'Sesión'
'Fuerte' (obligatorio)
maxIntervalInSeconds Cuando se usa con el nivel de coherencia obsolescencia limitada, este valor representa la cantidad de tiempo de obsolescencia (en segundos) tolerada. El intervalo aceptado para este valor es 5 - 86400. Obligatorio cuando defaultConsistencyPolicy está establecido en "BoundedStaleness". int

Restricciones:
Valor mínimo = 5
Valor máximo = 86400
maxStalenessPrefix Cuando se usa con el nivel de coherencia obsolescencia limitada, este valor representa el número de solicitudes obsoletas toleradas. El intervalo aceptado para este valor es de 1 - 2.147.483.647. Obligatorio cuando defaultConsistencyPolicy está establecido en "BoundedStaleness". int

Restricciones:
Valor mínimo = 1
Valor máximo = 2147483647

CorsPolicy

Nombre Descripción Valor
allowedHeaders los encabezados de solicitud que el dominio de origen puede especificar en la solicitud de CORS. string
allowedMethods los métodos (verbos de solicitud HTTP) que el dominio de origen puede usar para una solicitud de CORS. string
allowedOrigins Los dominios de origen que pueden realizar una solicitud en el servicio a través de CORS. string (obligatorio)
exposedHeaders los encabezados de respuesta que se pueden enviar en la respuesta a la solicitud de CORS y que el explorador expone al emisor de la solicitud. string
maxAgeInSeconds el tiempo máximo que un explorador debe almacenar en la memoria caché la solicitud preparatoria OPTIONS. int

Restricciones:
Valor mínimo = 1
Valor máximo = 2147483647

DiagnosticLogSettings

Nombre Descripción Valor
enableFullTextQuery 'False'
'Ninguno'
'True': describa el nivel de detalle con el que se registrarán las consultas.

IpAddressOrRange

Nombre Descripción Valor
ipAddressOrRange Una sola dirección IPv4 o un único intervalo de direcciones IPv4 en formato CIDR. Las direcciones IP proporcionadas deben tener un formato correcto y no se pueden incluir en uno de los siguientes intervalos: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, ya que no son aplicables por el filtro de direcciones IP. Ejemplo de entradas válidas: "23.40.210.245" o "23.40.210.0/8". string

Location

Nombre Descripción Valor
failoverPriority Prioridad de conmutación por error de la región. Una prioridad de conmutación por error de 0 indica una región de escritura. Valor máximo de una prioridad de conmutación por error = (número total de regiones - 1). Los valores de prioridad de conmutación por error deben ser únicos para cada una de las regiones en las que existe la cuenta de base de datos. int

Restricciones:
Valor mínimo = 0
isZoneRedundant Marca para indicar si esta región es o no una región AvailabilityZone bool
locationName El nombre de la región. string

RestoreParameters

Nombre Descripción Valor
databasesToRestore Lista de bases de datos específicas disponibles para la restauración. DatabaseRestoreResource[]
gremlinDatabasesToRestore Lista de bases de datos gremlin específicas disponibles para la restauración. GremlinDatabaseRestoreResource[]
restoreMode Describe el modo de restauración. 'PointInTime'
restoreSource Identificador de la cuenta de base de datos restaurable desde la que se debe iniciar la restauración. Por ejemplo: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} string
restoreTimestampInUtc Hora a la que se debe restaurar la cuenta (formato ISO-8601). string
restoreWithTtlDisabled Especifica si la cuenta restaurada tendrá deshabilitado el período de vida tras la restauración correcta. bool
sourceBackupLocation Ubicación de copia de seguridad de origen para la restauración. string
tablesToRestore Lista de tablas específicas disponibles para la restauración. string[]

DatabaseRestoreResource

Nombre Descripción Valor
collectionNames Los nombres de las colecciones disponibles para restaurar. string[]
databaseName Nombre de la base de datos disponible para restaurar. string

GremlinDatabaseRestoreResource

Nombre Descripción Valor
databaseName Nombre de la base de datos gremlin disponible para la restauración. string
graphNames Nombres de los gráficos disponibles para la restauración. string[]

VirtualNetworkRule

Nombre Descripción Value
id Identificador de recurso de una subred, por ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}. string
ignoreMissingVNetServiceEndpoint Cree una regla de firewall antes de que la red virtual tenga habilitado el punto de conexión de servicio de red virtual. bool

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
CI/CD mediante Jenkins en Azure Container Service (AKS)

Implementación en Azure
Los contenedores facilitan la compilación e implementación continua de las aplicaciones. Al orquestar la implementación de esos contenedores mediante Kubernetes en Azure Container Service, puede lograr clústeres replicables y administrables de contenedores. Mediante la configuración de una compilación continua para producir las imágenes y la orquestación de contenedores, puede aumentar la velocidad y la confiabilidad de la implementación.
Aplicación web con un SQL Database, Azure Cosmos DB, Azure Search

Implementación en Azure
Esta plantilla aprovisiona una aplicación web, una SQL Database, Azure Cosmos DB, Azure Search y Application Insights.
Creación de una cuenta de Azure Cosmos DB para Cassandra API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Cassandra API en dos regiones con un espacio de claves y una tabla con rendimiento dedicado.
Creación de una cuenta de Escalado automático de Azure Cosmos DB para Cassandra API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Cassandra API en dos regiones con un espacio de claves y una tabla con rendimiento de escalabilidad automática.
Creación de una cuenta de Azure CosmosDB

Implementación en Azure
Esta plantilla de ARM está intención de crear una cuenta de CosmosDB rápidamente con los valores mínimos necesarios.
Creación de una cuenta de Azure Cosmos DB en varias regiones

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para cualquier tipo de API de base de datos con una región primaria y secundaria con la elección del nivel de coherencia y el tipo de conmutación por error.
Creación de una cuenta de Azure Cosmos DB de nivel gratis

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB de nivel gratuito para sql API con una base de datos con rendimiento compartido y contenedor.
Creación de una cuenta de Azure Cosmos DB para Gremlin API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Gremlin API en dos regiones con una base de datos y un grafo mediante un rendimiento dedicado.
Creación de una cuenta de Azure Cosmos DB para el escalado automático de Gremlin API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Gremlin API en dos regiones con una base de datos y un grafo mediante el rendimiento de escalabilidad automática.
Creación de una cuenta de Azure Cosmos para mongoDB API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para MongoDB API 4.2 en dos regiones mediante el rendimiento compartido y dedicado con dos colecciones.
Creación de una cuenta de Azure Cosmos para la escalabilidad automática de mongoDB API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para MongoDB API 4.2 en dos regiones mediante el rendimiento de escalabilidad automática compartida y dedicada.
Creación de una cuenta de Azure Cosmos DB con un punto de conexión privado

Implementación en Azure
Esta plantilla creará una cuenta de Cosmos, una red virtual y un punto de conexión privado que exponga la cuenta de Cosmos a la red virtual.
Creación de una cuenta de Azure Cosmos DB para Core (SQL) API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos para Core (SQL) API con una base de datos y un contenedor con rendimiento con varias otras opciones.
API de SQL de la cuenta de Azure Cosmos DB con almacén analítico

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos para Core (SQL) API con una base de datos y un contenedor configurados con almacén analítico.
Creación de una API de SQL de la cuenta de Azure Cosmos DB con escalabilidad automática

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos para Core (SQL) API con una base de datos y un contenedor con rendimiento de escalabilidad automática con varias otras opciones.
Creación de procedimientos almacenados de la API de Azure Cosmos DB Core (SQL)

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Core (SQL) API y un contenedor con un procedimiento almacenado, un desencadenador y una función definida por el usuario.
Creación de una cuenta mínima de Azure Cosmos DB para Core (SQL) API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para core (SQL) API, al mismo tiempo que solo especifica las propiedades de recursos mínimas necesarias.
Creación de Azure Cosmos con SQL API y varios contenedores

Implementación en Azure
La plantilla crea un contenedor de Cosmos con una API de SQL y permite agregar contenedores de mulitple.
Creación de una cuenta sql de Azure Cosmos DB con RBAC del plano de datos

Implementación en Azure
Esta plantilla creará una cuenta de SQL Cosmos, una definición de rol mantenida de forma nativa y una asignación de roles mantenida de forma nativa para una identidad de AAD.
Creación de una cuenta de Azure Cosmos DB sin servidor para sql API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB sin servidor para core (SQL) API.
Creación de una cuenta de Azure Cosmos para Table API

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Table API en dos regiones y una sola tabla con rendimiento aprovisionado.
Creación de una cuenta de Azure Cosmos para Table API con escalabilidad automática

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos DB para Table API en dos regiones y una sola tabla con rendimiento de escalabilidad automática.
Creación de una cuenta de Azure Cosmos sin interacción y una aplicación web de Azure

Implementación en Azure
Esta plantilla crea una cuenta de Azure Cosmos, inserta el punto de conexión y las claves de Cosmos DB en la configuración de Azure Web App y, a continuación, implementa una aplicación web de ASP MVC desde GitHub.
Creación de una cuenta de Cosmos DB con Microsoft Defender habilitado

Implementación en Azure
Con esta plantilla de ARM, puede implementar una cuenta de Azure Cosmos DB con Microsoft Defender para Azure Cosmos DB habilitado. Microsoft Defender para Azure Cosmos DB es una capa de seguridad nativa de Azure que detecta intentos de aprovechar una vulnerabilidad de seguridad de las bases de datos de las cuentas de Azure Cosmos DB. Microsoft Defender para Azure Cosmos DB detecta posibles inyecciones de SQL, actores malintencionados conocidos basados en inteligencia sobre amenazas de Microsoft, patrones de acceso sospechosos y posibles vulnerabilidades de la base de datos a través de identidades comprometidas o usuarios internos malintencionados.
Implementación de Azure Data Explorer DB con conexión de Cosmos DB

Implementación en Azure
Implemente Azure Data Explorer DB con la conexión de Cosmos DB.
Cuenta de Azure Cosmos DB con aplicación web

Implementación en Azure
Esta plantilla implementa una cuenta de Azure Cosmos DB, un plan de App Service y crea una aplicación web en el plan de App Service. También agrega dos configuraciones de aplicación a la aplicación web que hacen referencia al punto de conexión de la cuenta de Azure Cosmos DB. De esta forma, las soluciones implementadas en la aplicación web pueden conectarse al punto de conexión de la cuenta de Azure Cosmos DB mediante esa configuración.

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso databaseAccounts se puede implementar con operaciones destinadas a:

  • Grupos de recursos

Para obtener una lista de las propiedades modificadas en cada versión de api, consulte registro de cambios.

Formato de los recursos

Para crear un recurso Microsoft.DocumentDB/databaseAccounts, agregue el siguiente terraform a la plantilla.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DocumentDB/databaseAccounts@2024-02-15-preview"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      analyticalStorageConfiguration = {
        schemaType = "string"
      }
      apiProperties = {
        serverVersion = "string"
      }
      backupPolicy = {
        migrationState = {
          startTime = "string"
          status = "string"
          targetType = "string"
        }
        type = "string"
        // For remaining properties, see BackupPolicy objects
      }
      capabilities = [
        {
          name = "string"
        }
      ]
      capacity = {
        totalThroughputLimit = int
      }
      connectorOffer = "Small"
      consistencyPolicy = {
        defaultConsistencyLevel = "string"
        maxIntervalInSeconds = int
        maxStalenessPrefix = int
      }
      cors = [
        {
          allowedHeaders = "string"
          allowedMethods = "string"
          allowedOrigins = "string"
          exposedHeaders = "string"
          maxAgeInSeconds = int
        }
      ]
      createMode = "string"
      customerManagedKeyStatus = "string"
      databaseAccountOfferType = "Standard"
      defaultIdentity = "string"
      defaultPriorityLevel = "string"
      diagnosticLogSettings = {
        enableFullTextQuery = "string"
      }
      disableKeyBasedMetadataWriteAccess = bool
      disableLocalAuth = bool
      enableAnalyticalStorage = bool
      enableAutomaticFailover = bool
      enableBurstCapacity = bool
      enableCassandraConnector = bool
      enableFreeTier = bool
      enableMaterializedViews = bool
      enableMultipleWriteLocations = bool
      enablePartitionMerge = bool
      enablePerRegionPerPartitionAutoscale = bool
      enablePriorityBasedExecution = bool
      ipRules = [
        {
          ipAddressOrRange = "string"
        }
      ]
      isVirtualNetworkFilterEnabled = bool
      keyVaultKeyUri = "string"
      locations = [
        {
          failoverPriority = int
          isZoneRedundant = bool
          locationName = "string"
        }
      ]
      minimalTlsVersion = "string"
      networkAclBypass = "string"
      networkAclBypassResourceIds = [
        "string"
      ]
      publicNetworkAccess = "string"
      restoreParameters = {
        databasesToRestore = [
          {
            collectionNames = [
              "string"
            ]
            databaseName = "string"
          }
        ]
        gremlinDatabasesToRestore = [
          {
            databaseName = "string"
            graphNames = [
              "string"
            ]
          }
        ]
        restoreMode = "PointInTime"
        restoreSource = "string"
        restoreTimestampInUtc = "string"
        restoreWithTtlDisabled = bool
        sourceBackupLocation = "string"
        tablesToRestore = [
          "string"
        ]
      }
      virtualNetworkRules = [
        {
          id = "string"
          ignoreMissingVNetServiceEndpoint = bool
        }
      ]
    }
    kind = "string"
  })
}

Objetos BackupPolicy

Establezca la propiedad type para especificar el tipo de objeto.

Para Continuous, use:

  type = "Continuous"
  continuousModeProperties = {
    tier = "string"
  }

Para Periodic, use:

  type = "Periodic"
  periodicModeProperties = {
    backupIntervalInMinutes = int
    backupRetentionIntervalInHours = int
    backupStorageRedundancy = "string"
  }

Valores de propiedad

databaseAccounts

Nombre Descripción Value
type Tipo de recurso "Microsoft.DocumentDB/databaseAccounts@2024-02-15-preview"
name El nombre del recurso string (obligatorio)

Límite de caracteres: 3-44

Caracteres válidos:
Letras minúsculas, números y guiones.

Comience con una letra minúscula o un número.

El nombre del recurso debe ser único en Azure.
ubicación Ubicación del grupo de recursos al que pertenece el recurso. string
parent_id Para realizar la implementación en un grupo de recursos, use el identificador de ese grupo de recursos. string (obligatorio)
etiquetas Las etiquetas son una lista de pares clave-valor que describen el recurso. Estas etiquetas pueden utilizarse para visualizar y agrupar este recurso a través de grupos de recursos. Se puede proporcionar un máximo de 15 etiquetas para un recurso. Cada etiqueta debe tener una clave no superior a 128 caracteres y un valor no superior a 256 caracteres. Por ejemplo, la experiencia predeterminada para un tipo de plantilla se establece con "defaultExperience": "Cassandra". Los valores actuales "defaultExperience" también incluyen "Table", "Graph", "DocumentDB" y "MongoDB". Diccionario de nombres y valores de etiqueta.
kind Indica el tipo de cuenta de base de datos. Esto solo se puede establecer en la creación de la cuenta de base de datos. "GlobalDocumentDB"
"MongoDB"
"Analizar"
identidad Identidad del recurso. ManagedServiceIdentity
properties Propiedades para crear y actualizar cuentas de base de datos de Azure Cosmos DB. DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... (obligatorio)

ManagedServiceIdentity

Nombre Descripción Value
type "SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned": el tipo de identidad que se usa para el recurso. El tipo "SystemAssigned,UserAssigned" incluye una identidad creada implícitamente y un conjunto de identidades asignadas por el usuario. El tipo "None" quitará las identidades del servicio.
identity_ids Lista de identidades de usuario asociadas al recurso. Las referencias de clave de diccionario de identidades de usuario serán identificadores de recurso de ARM con el formato : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. Matriz de identificadores de identidad de usuario.

ManagedServiceIdentityUserAssignedIdentities

Nombre Descripción Valor
{propiedad personalizada} Components1Jq1T4ISchemasManagedserviceidentityProper...

Components1Jq1T4ISchemasManagedserviceidentityProper...

Este objeto no contiene ninguna propiedad que se va a establecer durante la implementación. Todas las propiedades son ReadOnly.

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

Nombre Descripción Valor
analyticalStorageConfiguration Propiedades específicas del almacenamiento analítico. AnalyticalStorageConfiguration
apiProperties Propiedades específicas de la API. Actualmente, solo se admite para la API de MongoDB. ApiProperties
backupPolicy Objeto que representa la directiva para realizar copias de seguridad en una cuenta. BackupPolicy
capabilities Lista de funcionalidades de Cosmos DB para la cuenta Funcionalidad[]
capacity Objeto que representa todas las propiedades relacionadas con la aplicación de capacidad en una cuenta. Capacity
connectorOffer Tipo de oferta del conector cassandra para la cuenta de C* de base de datos de Cosmos DB. "Pequeño"
consistencyPolicy La directiva de coherencia de la cuenta de Cosmos DB. ConsistencyPolicy
cors Directiva de CORS para la cuenta de base de datos de Cosmos DB. CorsPolicy[]
createMode Enumeración para indicar el modo de creación de la cuenta. "Valor predeterminado"
"PointInTimeRestore"
"Restaurar"
customerManagedKeyStatus Indica el estado de la característica Clave administrada por el cliente en la cuenta. En caso de que haya errores, la propiedad proporciona instrucciones para solucionar problemas. string
databaseAccountOfferType Tipo de oferta para la base de datos "Estándar" (obligatorio)
defaultIdentity La identidad predeterminada para acceder al almacén de claves usado en características como las claves administradas por el cliente. Los usuarios deben establecer explícitamente la identidad predeterminada. Puede ser "FirstPartyIdentity", "SystemAssignedIdentity" y mucho más. string
defaultPriorityLevel Enumeración para indicar el nivel de prioridad predeterminado de la solicitud para la ejecución basada en prioridad. "High"
"Low"
diagnosticLogSettings Objeto que representa la configuración del registro de diagnóstico diferente para la cuenta de Cosmos DB. DiagnosticLogSettings
disableKeyBasedMetadataWriteAccess Deshabilitar las operaciones de escritura en recursos de metadatos (bases de datos, contenedores y rendimiento) mediante claves de cuenta bool
disableLocalAuth No participar en la autenticación local y asegurarse de que solo se pueden usar MSI y AAD exclusivamente para la autenticación. bool
enableAnalyticalStorage Marca para indicar si se va a habilitar el análisis de almacenamiento. bool
enableAutomaticFailover Habilita la conmutación automática por error de la región de escritura en el caso poco frecuente de que la región no esté disponible debido a una interrupción. La conmutación automática por error dará lugar a una nueva región de escritura para la cuenta y se elige en función de las prioridades de conmutación por error configuradas para la cuenta. bool
enableBurstCapacity Marca para indicar la habilitación o deshabilitación de la característica De vista previa de capacidad de ráfaga en la cuenta bool
enableCassandraConnector Habilita el conector cassandra en la cuenta de C* de Cosmos DB. bool
enableFreeTier Marca para indicar si el nivel Gratis está habilitado. bool
enableMaterializedViews Marca para indicar si se habilita MaterializedViews en la cuenta de Cosmos DB bool
enableMultipleWriteLocations Permite que la cuenta escriba en varias ubicaciones. bool
enablePartitionMerge Marca para indicar la habilitación o deshabilitación de la característica de combinación de particiones en la cuenta bool
enablePerRegionPerPartitionAutoscale Marca para indicar la habilitación o deshabilitación de Per-Region característica vista previa de escalabilidad automática por partición en la cuenta bool
enablePriorityBasedExecution Marca para indicar la habilitación o deshabilitación de la característica versión preliminar de ejecución basada en prioridad en la cuenta bool
ipRules Lista de IpRules. IpAddressOrRange[]
isVirtualNetworkFilterEnabled Marca para indicar si habilitar o deshabilitar Virtual Network reglas de ACL. bool
keyVaultKeyUri URI del almacén de claves string
locations Matriz que contiene las ubicaciones de georeplicación habilitadas para la cuenta de Cosmos DB. Location[] (obligatorio)
minimalTlsVersion Indica la versión mínima permitida de Tls. El valor predeterminado es Tls 1.0, excepto cassandra y mongo API, que solo funcionan con Tls 1.2. "Tls"
"Tls11"
"Tls12"
networkAclBypass "AzureServices"
"None": indica qué servicios pueden omitir las comprobaciones de firewall.
networkAclBypassResourceIds Matriz que contiene los identificadores de recurso para la omisión de Acl de red para la cuenta de Cosmos DB. string[]
publicNetworkAccess Indica si se permiten solicitudes de red pública "Deshabilitado"
"Habilitado"
"SecuredByPerimeter"
restoreParameters Parámetros para indicar la información sobre la restauración. RestoreParameters
virtualNetworkRules Lista de Virtual Network reglas de ACL configuradas para la cuenta de Cosmos DB. VirtualNetworkRule[]

AnalyticalStorageConfiguration

Nombre Descripción Valor
schemaType Describe los tipos de esquema para el almacenamiento analítico. "FullFidelity"
"WellDefined"

ApiProperties

Nombre Descripción Valor
serverVersion Describe ServerVersion de una cuenta de MongoDB. "3.2"
"3.6"
"4.0"
"4.2"

BackupPolicy

Nombre Descripción Valor
migrationState Objeto que representa el estado de la migración entre las directivas de copia de seguridad. BackupPolicyMigrationState
tipo Establecimiento del tipo de objeto Continuo
Periódico (obligatorio)

BackupPolicyMigrationState

Nombre Descripción Valor
startTime Hora en la que se inició la migración de directivas de copia de seguridad (formato ISO-8601). string
status Describe el estado de la migración entre los tipos de directiva de copia de seguridad. "Completado"
"Error"
"InProgress"
"No válido"
targetType Describe el tipo de directiva de copia de seguridad de destino de la migración de directivas de copia de seguridad. "Continuo"
"Periódico"

ContinuousModeBackupPolicy

Nombre Descripción Value
type Describe el modo de copias de seguridad. "Continuo" (obligatorio)
continuousModeProperties Valores de configuración para la copia de seguridad en modo continuo ContinuousModeProperties

ContinuousModeProperties

Nombre Descripción Valor
Nivel: Enumeración para indicar el tipo de modo de copia de seguridad continuos "Continuous30Days"
"Continuous7Days"

PeriodicModeBackupPolicy

Nombre Descripción Value
type Describe el modo de copias de seguridad. "Periódico" (obligatorio)
periodicModeProperties Valores de configuración para la copia de seguridad en modo periódico PeriodicModeProperties

PeriodicModeProperties

Nombre Descripción Valor
backupIntervalInMinutes Entero que representa el intervalo en minutos entre dos copias de seguridad. int

Restricciones:
Valor mínimo = 0
backupRetentionIntervalInHours Entero que representa el tiempo (en horas) que conserva cada copia de seguridad. int

Restricciones:
Valor mínimo = 0
backupStorageRedundancy Enumeración para indicar el tipo de residencia de copia de seguridad "Geo"
"Local"
"Zona"

Capacidad

Nombre Descripción Value
name Nombre de la funcionalidad de Cosmos DB. Por ejemplo, "name": "EnableCassandra". Los valores actuales también incluyen "EnableTable" y "EnableGremlin". string

Capacity

Nombre Descripción Valor
totalThroughputLimit Límite de rendimiento total impuesto en la cuenta. Un valor totalThroughputLimit de 2000 impone un límite estricto de rendimiento máximo que se puede aprovisionar en esa cuenta para ser 2000. Un valor totalThroughputLimit de -1 indica que no hay límites en el aprovisionamiento del rendimiento. int

ConsistencyPolicy

Nombre Descripción Valor
defaultConsistencyLevel El nivel de coherencia predeterminado y los valores de configuración de la cuenta de Cosmos DB. "BoundedStaleness"
"ConsistentPrefix"
"Eventual"
"Sesión"
"Fuerte" (obligatorio)
maxIntervalInSeconds Cuando se usa con el nivel de coherencia Obsolescencia limitada, este valor representa la cantidad de tiempo de obsolescencia (en segundos) tolerada. El intervalo aceptado para este valor es de 5 a 86400. Obligatorio cuando defaultConsistencyPolicy se establece en "BoundedStaleness". int

Restricciones:
Valor mínimo = 5
Valor máximo = 86400
maxStalenessPrefix Cuando se usa con el nivel de coherencia obsolescencia limitada, este valor representa el número de solicitudes obsoletas toleradas. El intervalo aceptado para este valor es de 1 - 2.147.483.647. Obligatorio cuando defaultConsistencyPolicy se establece en "BoundedStaleness". int

Restricciones:
Valor mínimo = 1
Valor máximo = 2147483647

CorsPolicy

Nombre Descripción Valor
allowedHeaders los encabezados de solicitud que el dominio de origen puede especificar en la solicitud de CORS. string
allowedMethods los métodos (verbos de solicitud HTTP) que el dominio de origen puede usar para una solicitud de CORS. string
allowedOrigins Los dominios de origen que pueden realizar una solicitud en el servicio a través de CORS. string (obligatorio)
exposedHeaders los encabezados de respuesta que se pueden enviar en la respuesta a la solicitud de CORS y que el explorador expone al emisor de la solicitud. string
maxAgeInSeconds el tiempo máximo que un explorador debe almacenar en la memoria caché la solicitud preparatoria OPTIONS. int

Restricciones:
Valor mínimo = 1
Valor máximo = 2147483647

DiagnosticLogSettings

Nombre Descripción Valor
enableFullTextQuery "False"
"None"
"True": describa el nivel de detalle con el que se van a registrar las consultas.

IpAddressOrRange

Nombre Descripción Valor
ipAddressOrRange Una sola dirección IPv4 o un único intervalo de direcciones IPv4 en formato CIDR. Las direcciones IP proporcionadas deben tener un formato correcto y no se pueden incluir en uno de los siguientes intervalos: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, ya que no son aplicables por el filtro de direcciones IP. Ejemplo de entradas válidas: "23.40.210.245" o "23.40.210.0/8". string

Location

Nombre Descripción Valor
failoverPriority Prioridad de conmutación por error de la región. Una prioridad de conmutación por error de 0 indica una región de escritura. Valor máximo de una prioridad de conmutación por error = (número total de regiones - 1). Los valores de prioridad de conmutación por error deben ser únicos para cada una de las regiones en las que existe la cuenta de base de datos. int

Restricciones:
Valor mínimo = 0
isZoneRedundant Marca para indicar si esta región es una región availabilityZone o no bool
locationName El nombre de la región. string

RestoreParameters

Nombre Descripción Valor
databasesToRestore Lista de bases de datos específicas disponibles para la restauración. DatabaseRestoreResource[]
gremlinDatabasesToRestore Lista de bases de datos de Gremlin específicas disponibles para la restauración. GremlinDatabaseRestoreResource[]
restoreMode Describe el modo de restauración. "PointInTime"
restoreSource Identificador de la cuenta de base de datos restaurable desde la que se debe iniciar la restauración. Por ejemplo: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} string
restoreTimestampInUtc Hora a la que se debe restaurar la cuenta (formato ISO-8601). string
restoreWithTtlDisabled Especifica si la cuenta restaurada tendrá deshabilitado el período de vida tras la restauración correcta. bool
sourceBackupLocation Ubicación de copia de seguridad de origen para la restauración. string
tablesToRestore Lista de tablas específicas disponibles para la restauración. string[]

DatabaseRestoreResource

Nombre Descripción Valor
collectionNames Los nombres de las colecciones disponibles para restaurar. string[]
databaseName Nombre de la base de datos disponible para restaurar. string

GremlinDatabaseRestoreResource

Nombre Descripción Valor
databaseName Nombre de la base de datos gremlin disponible para la restauración. string
graphNames Nombres de los gráficos disponibles para la restauración. string[]

VirtualNetworkRule

Nombre Descripción Value
id Identificador de recurso de una subred, por ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}. string
ignoreMissingVNetServiceEndpoint Cree una regla de firewall antes de que la red virtual tenga habilitado el punto de conexión de servicio de red virtual. bool