Microsoft.DocumentDB databaseAccounts

Bicep リソース定義

databaseAccounts リソースの種類は、次を対象とする操作でデプロイできます。

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.DocumentDB/databaseAccounts リソースを作成するには、次の Bicep をテンプレートに追加します。

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
      }
    ]
  }
}

BackupPolicy オブジェクト

type プロパティを設定して、オブジェクトの種類を指定します。

[継続的] には、次の値を使用します。

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

定期的な場合は、次の値を使用します。

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

プロパティ値

databaseAccounts

名前 説明
name リソース名 string (必須)

文字数制限: 3 から 44

有効な文字:
小文字、数字、およびハイフン。

先頭には小文字または数字を使用します。

リソース名は、Azure 全体で一意である必要があります。
location リソースが属しているリソース グループの場所。 string
tags タグは、リソースを記述するキーと値のペアの一覧です。 これらのタグはリソース グループをまたがってこのリソースを表示およびグループ化する際に使用できます。 リソースには最大 15 個のタグを指定できます。 各タグには 128 文字以内のキーと、256 文字以内の値が必要です。 たとえば、テンプレートの種類の既定のエクスペリエンスは"defaultExperience": "Cassandra" に設定されます。 現在の "defaultExperience" 値には、"Table"、"Graph"、"DocumentDB"、"MongoDB" も含まれます。 タグ名と値のディクショナリ。 「テンプレートのタグ」を参照してください
kind データベース アカウントの種類を示します。 これは、データベース アカウントの作成時にのみ設定できます。 'GlobalDocumentDB'
'MongoDB'
'Parse'
identity リソースの ID。 ManagedServiceIdentity
properties Azure Cosmos DB データベース アカウントを作成および更新するためのプロパティ。 DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... (必須)

ManagedServiceIdentity

名前 説明
type 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned': リソースに使用される ID の種類。 型 'SystemAssigned,UserAssigned' には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスから ID を削除します。
userAssignedIdentities リソースに関連付けられているユーザー ID の一覧。 ユーザー ID ディクショナリ キーの参照は、'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' という形式の ARM リソース ID になります。 ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

名前 説明
{カスタマイズされたプロパティ} Components1Jq1T4ISchemasManagedserviceidentityProper...

Components1Jq1T4ISchemasManagedserviceidentityProper...

このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

名前 説明
analyticalStorageConfiguration 分析ストレージ固有のプロパティ。 AnalyticalStorageConfiguration
apiProperties API 固有のプロパティ。 現在、MongoDB API でのみサポートされています。 ApiProperties
backupPolicy アカウントでバックアップを作成するためのポリシーを表す オブジェクト。 BackupPolicy
capabilities アカウントの Cosmos DB 機能の一覧 Capability[]
capacity アカウントの容量の適用に関連するすべてのプロパティを表す オブジェクト。 [容量]
connectorOffer Cosmos DB データベース C* アカウントの cassandra コネクタ オファーの種類。 'Small'
consistencyPolicy Cosmos DB アカウントの整合性ポリシー。 ConsistencyPolicy
cors Cosmos DB データベース アカウントの CORS ポリシー。 CorsPolicy[]
createMode アカウントの作成モードを示す列挙型。 'Default'
'PointInTimeRestore'
'Restore'
customerManagedKeyStatus アカウントのカスタマー マネージド キー機能の状態を示します。 エラーが発生した場合は、 プロパティでトラブルシューティング ガイダンスが提供されます。 string
databaseAccountOfferType データベースのオファーの種類 'Standard' (必須)
defaultIdentity カスタマー マネージド キーなどの機能で使用されるキー コンテナーにアクセスするための既定の ID。 既定の ID は、ユーザーが明示的に設定する必要があります。 "FirstPartyIdentity"、"SystemAssignedIdentity" などです。 string
defaultPriorityLevel 優先度ベースの実行に対する要求の既定の優先度レベルを示す列挙型。 'High'
'Low'
diagnosticLogSettings Cosmos DB アカウントのさまざまな診断ログ設定を表す オブジェクト。 DiagnosticLogSettings
disableKeyBasedMetadataWriteAccess アカウント キーを使用してメタデータ リソース (データベース、コンテナー、スループット) に対する書き込み操作を無効にする [bool]
disableLocalAuth ローカル認証をオプトアウトし、MSI と AAD のみを認証専用に使用できるようにします。 [bool]
enableAnalyticalStorage ストレージ分析を有効にするかどうかを示すフラグ。 [bool]
enableAutomaticFailover 障害が原因でリージョンが使用できないまれな場合に、書き込みリージョンの自動フェールオーバーを有効にします。 自動フェールオーバーにより、アカウントの新しい書き込みリージョンが作成され、アカウントに構成されているフェールオーバーの優先順位に基づいて選択されます。 [bool]
enableBurstCapacity アカウントでのバースト容量プレビュー機能の有効化/無効化を示すフラグ [bool]
enableCassandraConnector Cosmos DB C* アカウントで cassandra コネクタを有効にします [bool]
enableFreeTier Free レベルが有効かどうかを示すフラグ。 [bool]
enableMaterializedViews Cosmos DB アカウントで MaterializedViews を有効にするかどうかを示すフラグ [bool]
enableMultipleWriteLocations アカウントを複数の場所に書き込むことができます [bool]
enablePartitionMerge アカウントでのパーティション マージ機能の有効化/無効化を示すフラグ [bool]
enablePerRegionPerPartitionAutoscale アカウントでのパーティションごとの自動スケーリング プレビュー機能の有効化/無効化 Per-Region 示すフラグ [bool]
enablePriorityBasedExecution アカウントで優先度ベースの実行プレビュー機能を有効または無効にすることを示すフラグ [bool]
ipRules IpRules の一覧。 IpAddressOrRange[]
isVirtualNetworkFilterEnabled ACL 規則を有効または無効にするかどうかを示すフラグVirtual Network設定します。 [bool]
keyVaultKeyUri キー コンテナーの URI string
locations Cosmos DB アカウントで有効になっている georeplication の場所を含む配列。 Location[] (必須)
minimalTlsVersion 許可される Tls の最小バージョンを示します。 Tls 1.2 でのみ動作する Cassandra と Mongo API を除き、既定値は Tls 1.0 です。 'Tls'
'Tls11'
'Tls12'
networkAclBypass 'AzureServices'
'None': ファイアウォール チェックをバイパスできるサービスを示します。
networkAclBypassResourceIds Cosmos DB アカウントのネットワーク ACL バイパスのリソース ID を含む配列。 string[]
publicNetworkAccess パブリック ネットワークからの要求が許可されるかどうか 'Disabled'
'Enabled'
'SecuredByPerimeter'
restoreParameters 復元に関する情報を示すパラメーター。 RestoreParameters
virtualNetworkRules Cosmos DB アカウント用に構成されたVirtual Network ACL 規則の一覧。 VirtualNetworkRule[]

AnalyticalStorageConfiguration

名前 説明
schemaType 分析ストレージのスキーマの種類について説明します。 'FullFidelity'
'WellDefined'

ApiProperties

名前 説明
serverVersion MongoDB アカウントの ServerVersion について説明します。 '3.2'
'3.6'
'4.0'
'4.2'

BackupPolicy

名前 説明
migrationState バックアップ ポリシー間の移行の状態を表す オブジェクト。 BackupPolicyMigrationState
オブジェクトの種類を設定する 継続的
定期的 (必須)

BackupPolicyMigrationState

名前 説明
startTime バックアップ ポリシーの移行が開始された時刻 (ISO-8601 形式)。 string
status バックアップ ポリシーの種類間の移行の状態について説明します。 'Completed'
'Failed'
'InProgress'
'Invalid'
targetType バックアップ ポリシー移行のターゲット バックアップ ポリシーの種類について説明します。 'Continuous'
'Periodic'

ContinuousModeBackupPolicy

名前 説明
type バックアップのモードについて説明します。 'Continuous' (必須)
continuousModeProperties 連続モード バックアップの構成値 ContinuousModeProperties

ContinuousModeProperties

名前 説明
レベル Continuos バックアップ モードの種類を示す列挙型 'Continuous30Days'
'Continuous7Days'

PeriodicModeBackupPolicy

名前 説明
type バックアップのモードについて説明します。 'Periodic' (必須)
periodicModeProperties 定期モード バックアップの構成値 PeriodicModeProperties

PeriodicModeProperties

名前 説明
backupIntervalInMinutes 2 つのバックアップ間の間隔を分単位で表す整数 INT

制約:
最小値 = 0
backupRetentionIntervalInHours 各バックアップが保持される時間 (時間単位) を表す整数 INT

制約:
最小値 = 0
backupStorageRedundancy バックアップの保存場所の種類を示す列挙型 'Geo'
'Local'
'Zone'

機能

名前 説明
name Cosmos DB 機能の名前。 たとえば、"name": "EnableCassandra" です。 現在の値には、"EnableTable" と "EnableGremlin" も含まれます。 string

容量

名前 説明
totalThroughputLimit アカウントに課される合計スループット制限。 totalThroughputLimit が 2000 の場合、そのアカウントでプロビジョニングできる最大スループットの厳密な制限は 2000 になります。 totalThroughputLimit の -1 は、スループットのプロビジョニングに制限がないことを示します。 INT

ConsistencyPolicy

名前 説明
defaultConsistencyLevel Cosmos DB アカウントの既定の整合性レベルと構成設定。 'BoundedStaleness'
'ConsistentPrefix'
'Eventual'
'Session'
'Strong' (必須)
maxIntervalInSeconds 有界整合性整合性レベルで使用する場合、この値は許容される制約の時間 (秒単位) を表します。 この値の許容範囲は 5 ~ 86400 です。 defaultConsistencyPolicy が 'BoundedStaleness' に設定されている場合に必要です。 INT

制約:
最小値 = 5
最大値 = 86400
maxStalenessPrefix 有界整合性整合性レベルで使用する場合、この値は許容される古い要求の数を表します。 この値の許容範囲は、1 ~ 2,147,483,647 です。 defaultConsistencyPolicy が 'BoundedStaleness' に設定されている場合に必要です。 INT

制約:
最小値 = 1
最大値 = 2147483647

CorsPolicy

名前 説明
allowedHeaders 元のドメインが CORS 要求に指定できる要求ヘッダー。 string
allowedMethods 元のドメインが CORS 要求で使用できるメソッド (HTTP 要求の動詞)。 string
allowedOrigins CORS 経由でサービスに対して要求を行うことができます。 string (必須)
exposedHeaders CORS 要求への応答で送信され、ブラウザーが要求の発行元に公開できる応答ヘッダー。 string
maxAgeInSeconds ブラウザーがプレフライト OPTIONS 要求をキャッシュする最大時間。 INT

制約:
最小値 = 1
最大値 = 2147483647

DiagnosticLogSettings

名前 説明
enableFullTextQuery "False"
'None'
'True': クエリをログに記録する詳細レベルについて説明します。

IpAddressOrRange

名前 説明
ipAddressOrRange CIDR 形式の単一の IPv4 アドレスまたは単一の IPv4 アドレス範囲。 IP は適切な形式である必要があり、10.0.0.0/8、100.64.0.0/10、172.16.0.0/12、192.168.0.0/16 のいずれかの範囲に含めることはできません。これらは IP アドレス フィルターによって適用できないためです。 有効な入力の例: "23.40.210.245" または "23.40.210.0/8" string

場所

名前 説明
failoverPriority リージョンのフェールオーバー優先度。 フェールオーバーの優先度が 0 の場合は、書き込みリージョンを示します。 フェールオーバー優先度の最大値 = (リージョンの合計数 - 1)。 フェールオーバー優先度の値は、データベース アカウントが存在するリージョンごとに一意である必要があります。 INT

制約:
最小値 = 0
isZoneRedundant このリージョンが AvailabilityZone リージョンであるかどうかを示すフラグ [bool]
locationName 領域の名前。 string

RestoreParameters

名前 説明
databasesToRestore 復元に使用できる特定のデータベースの一覧。 DatabaseRestoreResource[]
gremlinDatabasesToRestore 復元に使用できる特定の gremlin データベースの一覧。 GremlinDatabaseRestoreResource[]
restoreMode 復元のモードについて説明します。 'PointInTime'
restoreSource 復元を開始する必要がある復元可能なデータベース アカウントの ID。 例: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} string
restoreTimestampInUtc アカウントを復元する必要がある時間 (ISO-8601 形式)。 string
restoreWithTtlDisabled 復元が成功したときに、復元されたアカウントで Time-To-Live を無効にするかどうかを指定します。 [bool]
sourceBackupLocation 復元のソース バックアップの場所。 string
tablesToRestore 復元に使用できる特定のテーブルの一覧。 string[]

DatabaseRestoreResource

名前 説明
collectionNames 復元に使用できるコレクションの名前。 string[]
databaseName 復元に使用できるデータベースの名前。 string

GremlinDatabaseRestoreResource

名前 説明
databaseName 復元に使用できる gremlin データベースの名前。 string
graphNames 復元に使用できるグラフの名前。 string[]

VirtualNetworkRule

名前 説明
id サブネットのリソース ID (例: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName})。 string
ignoreMissingVNetServiceEndpoint 仮想ネットワークで vnet サービス エンドポイントが有効にする前に、ファイアウォール規則を作成します。 [bool]

クイック スタート テンプレート

次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。

Template 説明
Azure Container Service (AKS) で Jenkins を使用する CI/CD

Azure にデプロイする
コンテナーにより、アプリケーションの継続的なビルドとデプロイが非常に簡単になります。 Azure Container Service で Kubernetes を使用してこれらのコンテナーのデプロイを調整することで、コンテナーのレプリケート可能で管理しやすいクラスターを実現できます。 コンテナー イメージを生成するための継続的ビルドを設定し、オーケストレーションすることで、デプロイのスピードと信頼性を向上させることができます。
SQL Databaseを使用した Web アプリ、Azure Cosmos DB、Azure Search

Azure にデプロイする
このテンプレートは、Web アプリ、SQL Database、Azure Cosmos DB、Azure Search、Application Insights をプロビジョニングします。
Cassandra API 用の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、専用スループットのキースペースとテーブルを持つ 2 つのリージョンに Cassandra API 用の Azure Cosmos DB アカウントを作成します。
Cassandra API の自動スケーリング Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、キースペースと自動スケーリング スループットを持つテーブルを持つ 2 つのリージョンに Cassandra API 用の Azure Cosmos DB アカウントを作成します。
Azure CosmosDB アカウントを作成する

Azure にデプロイする
この ARM テンプレートは、必要最小限の値で CosmosDB アカウントをすばやく作成することを目的としています
複数のリージョンに Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、整合性レベルとフェールオーバーの種類を選択して、プライマリリージョンとセカンダリ リージョンを持つ任意のデータベース API の種類に対して Azure Cosmos DB アカウントを作成します。
Free レベルの Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートでは、共有スループットとコンテナーを持つデータベースを使用して、SQL API 用の Free レベルの Azure Cosmos DB アカウントを作成します。
Gremlin API 用の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、専用スループットを使用して、1 つのデータベースと 1 つのグラフを含む 2 つのリージョンに Gremlin API 用の Azure Cosmos DB アカウントを作成します。
Gremlin API 自動スケーリング用の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、自動スケーリング スループットを使用して、1 つのデータベースと 1 つのグラフを含む 2 つのリージョンに Gremlin API 用の Azure Cosmos DB アカウントを作成します。
MongoDB API 用の Azure Cosmos アカウントを作成する

Azure にデプロイする
このテンプレートでは、2 つのコレクションで共有スループットと専用スループットを使用して、MongoDB API 4.2 用の Azure Cosmos DB アカウントを 2 つのリージョンに作成します。
MongoDB API 自動スケーリング用の Azure Cosmos アカウントを作成する

Azure にデプロイする
このテンプレートでは、共有と専用の自動スケーリングの両方のスループットを使用して、MongoDB API 4.2 用の Azure Cosmos DB アカウントを 2 つのリージョンに作成します。
プライベート エンドポイントを使用して Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートでは、Cosmos アカウント、仮想ネットワーク、および Cosmos アカウントを仮想ネットワークに公開するプライベート エンドポイントが作成されます。
Core (SQL) API 用の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートでは、他の複数のオプションを含むスループットを持つデータベースとコンテナーを使用して、Core (SQL) API 用の Azure Cosmos アカウントを作成します。
分析ストアを使用した Azure Cosmos DB アカウント SQL API

Azure にデプロイする
このテンプレートでは、分析ストアで構成されたデータベースとコンテナーを使用して、Core (SQL) API 用の Azure Cosmos アカウントを作成します。
自動スケーリングを使用して Azure Cosmos DB アカウント SQL API を作成する

Azure にデプロイする
このテンプレートでは、他の複数のオプションを使用して、自動スケーリング スループットを持つデータベースとコンテナーを使用して、Core (SQL) API 用の Azure Cosmos アカウントを作成します。
Azure Cosmos DB Core (SQL) API ストアド プロシージャを作成する

Azure にデプロイする
このテンプレートでは、Core (SQL) API 用の Azure Cosmos DB アカウントと、ストアド プロシージャ、トリガー、およびユーザー定義関数を含むコンテナーを作成します。
Core (SQL) API 用の最小限の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートでは、必要最小限のリソース プロパティのみを指定しながら、コア (SQL) API 用の Azure Cosmos DB アカウントを作成します。
SQL API と複数のコンテナーを使用して Azure Cosmos を作成する

Azure にデプロイする
このテンプレートでは、SQL API を使用して Cosmos コンテナーを作成し、複数のコンテナーを追加できます。
データ プレーン RBAC を使用して Azure Cosmos DB SQL アカウントを作成する

Azure にデプロイする
このテンプレートは、AAD ID 用の SQL Cosmos アカウント、ネイティブに管理されるロールの定義、およびネイティブに管理されるロールの割り当てを作成します。
SQL API 用のサーバーレス Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、Core (SQL) API 用のサーバーレス Azure Cosmos DB アカウントを作成します。
Table API 用の Azure Cosmos アカウントを作成する

Azure にデプロイする
このテンプレートでは、Table API 用の Azure Cosmos DB アカウントが 2 つのリージョンに作成され、スループットがプロビジョニングされた 1 つのテーブルが作成されます。
自動スケーリングを使用して Table API 用の Azure Cosmos アカウントを作成する

Azure にデプロイする
このテンプレートでは、2 つのリージョンに Table API 用の Azure Cosmos DB アカウントを作成し、自動スケーリング スループットを持つ 1 つのテーブルを作成します。
ゼロタッチの Azure Cosmos アカウントと Azure Web アプリを作成する

Azure にデプロイする
このテンプレートでは、Azure Cosmos アカウントを作成し、Cosmos DB エンドポイントとキーを Azure Web App 設定に挿入してから、GitHub から ASP MVC Web アプリをデプロイします。
Microsoft Defenderが有効になっている Cosmos DB アカウントを作成する

Azure にデプロイする
この ARM テンプレートを使用すると、Azure Cosmos DB 用のMicrosoft Defenderが有効になっている Azure Cosmos DB アカウントをデプロイできます。 Microsoft Defender for Azure Cosmos DB は、Azure ネイティブのセキュリティ層であり、ここでは Azure Cosmos DB アカウント内のデータベースを悪用しようとする試みが検出されます。 Azure Cosmos DB のMicrosoft Defenderは、潜在的な SQL インジェクション、Microsoft 脅威インテリジェンスに基づく既知の悪意のあるアクター、疑わしいアクセス パターン、および侵害された ID または悪意のある内部関係者によるデータベースの潜在的な悪用を検出します。
Cosmos DB 接続を使用して Azure Data Explorer DB をデプロイする

Azure にデプロイする
Cosmos DB 接続を使用して Azure Data Explorer DB をデプロイします。
Web アプリを使用した Azure Cosmos DB アカウント

Azure にデプロイする
このテンプレートは、Azure Cosmos DB アカウント、App Service プランをデプロイし、App Service プランに Web アプリを作成します。 また、Azure Cosmos DB アカウント エンドポイントを参照する 2 つのアプリケーション設定を Web アプリに追加します。 このようにして、Web アプリにデプロイされたソリューションは、これらの設定を使用して Azure Cosmos DB アカウント エンドポイントに接続できます。

ARM テンプレート リソース定義

databaseAccounts リソースの種類は、次を対象とする操作でデプロイできます。

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.DocumentDB/databaseAccounts リソースを作成するには、次の JSON をテンプレートに追加します。

{
  "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"
      }
    ]
  }
}

BackupPolicy オブジェクト

オブジェクトの を指定するには、type プロパティを設定します。

[継続的] には、次の値を使用します。

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

定期的な場合は、次の値を使用します。

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

プロパティ値

databaseAccounts

名前 説明
type リソースの種類 'Microsoft.DocumentDB/databaseAccounts'
apiVersion リソース API のバージョン '2024-02-15-preview'
name リソース名 string (必須)

文字数制限: 3 から 44

有効な文字:
小文字、数字、およびハイフン。

先頭には小文字または数字を使用します。

リソース名は、Azure 全体で一意である必要があります。
location リソースが属しているリソース グループの場所。 string
tags タグは、リソースを記述するキーと値のペアの一覧です。 これらのタグはリソース グループをまたがってこのリソースを表示およびグループ化する際に使用できます。 リソースには最大 15 個のタグを指定できます。 各タグには 128 文字以内のキーと、256 文字以内の値が必要です。 たとえば、テンプレートの種類の既定のエクスペリエンスは"defaultExperience": "Cassandra" に設定されます。 現在の "defaultExperience" 値には、"Table"、"Graph"、"DocumentDB"、"MongoDB" も含まれます。 タグ名と値のディクショナリ。 「テンプレートのタグ」を参照してください
kind データベース アカウントの種類を示します。 これは、データベース アカウントの作成時にのみ設定できます。 'GlobalDocumentDB'
'MongoDB'
'Parse'
identity リソースの ID。 ManagedServiceIdentity
properties Azure Cosmos DB データベース アカウントを作成および更新するためのプロパティ。 DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... (必須)

ManagedServiceIdentity

名前 説明
type 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned': リソースに使用される ID の種類。 型 'SystemAssigned,UserAssigned' には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスから ID を削除します。
userAssignedIdentities リソースに関連付けられているユーザー ID の一覧。 ユーザー ID ディクショナリ キーの参照は、'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' という形式の ARM リソース ID になります。 ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

名前 説明
{カスタマイズされたプロパティ} Components1Jq1T4ISchemasManagedserviceidentityProper...

Components1Jq1T4ISchemasManagedserviceidentityProper...

このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

名前 説明
analyticalStorageConfiguration 分析ストレージ固有のプロパティ。 AnalyticalStorageConfiguration
apiProperties API 固有のプロパティ。 現在、MongoDB API でのみサポートされています。 ApiProperties
backupPolicy アカウントでバックアップを作成するためのポリシーを表す オブジェクト。 BackupPolicy
capabilities アカウントの Cosmos DB 機能の一覧 Capability[]
capacity アカウントの容量の適用に関連するすべてのプロパティを表す オブジェクト。 [容量]
connectorOffer Cosmos DB データベース C* アカウントの cassandra コネクタ オファーの種類。 'Small'
consistencyPolicy Cosmos DB アカウントの整合性ポリシー。 ConsistencyPolicy
cors Cosmos DB データベース アカウントの CORS ポリシー。 CorsPolicy[]
createMode アカウントの作成モードを示す列挙型。 'Default'
'PointInTimeRestore'
'Restore'
customerManagedKeyStatus アカウントのカスタマー マネージド キー機能の状態を示します。 エラーが発生した場合は、 プロパティでトラブルシューティング ガイダンスが提供されます。 string
databaseAccountOfferType データベースのオファーの種類 'Standard' (必須)
defaultIdentity カスタマー マネージド キーなどの機能で使用されるキー コンテナーにアクセスするための既定の ID。 既定の ID は、ユーザーが明示的に設定する必要があります。 "FirstPartyIdentity"、"SystemAssignedIdentity" などです。 string
defaultPriorityLevel 優先度ベースの実行に対する要求の既定の優先度レベルを示す列挙型。 'High'
'Low'
diagnosticLogSettings Cosmos DB アカウントのさまざまな診断ログ設定を表す オブジェクト。 DiagnosticLogSettings
disableKeyBasedMetadataWriteAccess アカウント キーを使用してメタデータ リソース (データベース、コンテナー、スループット) に対する書き込み操作を無効にする [bool]
disableLocalAuth ローカル認証をオプトアウトし、MSI と AAD のみを認証専用に使用できるようにします。 [bool]
enableAnalyticalStorage ストレージ分析を有効にするかどうかを示すフラグ。 [bool]
enableAutomaticFailover 障害が原因でリージョンが使用できないまれな場合に、書き込みリージョンの自動フェールオーバーを有効にします。 自動フェールオーバーにより、アカウントの新しい書き込みリージョンが作成され、アカウントに構成されているフェールオーバーの優先順位に基づいて選択されます。 [bool]
enableBurstCapacity アカウントでのバースト容量プレビュー機能の有効化/無効化を示すフラグ [bool]
enableCassandraConnector Cosmos DB C* アカウントで cassandra コネクタを有効にします [bool]
enableFreeTier Free レベルが有効かどうかを示すフラグ。 [bool]
enableMaterializedViews Cosmos DB アカウントで MaterializedViews を有効にするかどうかを示すフラグ [bool]
enableMultipleWriteLocations アカウントを複数の場所に書き込むことができます [bool]
enablePartitionMerge アカウントでのパーティション マージ機能の有効化/無効化を示すフラグ [bool]
enablePerRegionPerPartitionAutoscale アカウントでのパーティションごとの自動スケーリング プレビュー機能の有効化/無効化 Per-Region 示すフラグ [bool]
enablePriorityBasedExecution アカウントでの優先度ベースの実行プレビュー機能の有効化/無効化を示すフラグ [bool]
ipRules IpRules の一覧。 IpAddressOrRange[]
isVirtualNetworkFilterEnabled VIRTUAL NETWORK ACL 規則を有効または無効にするかどうかを示すフラグ。 [bool]
keyVaultKeyUri キー コンテナーの URI string
locations Cosmos DB アカウントで有効になっている georeplication の場所を含む配列。 Location[] (必須)
minimalTlsVersion 許可されている Tls の最小バージョンを示します。 Tls 1.2 でのみ動作する Cassandra と Mongo API を除き、既定値は Tls 1.0 です。 'Tls'
'Tls11'
'Tls12'
networkAclBypass 'AzureServices'
'None': ファイアウォール チェックをバイパスできるサービスを示します。
networkAclBypassResourceIds Cosmos DB アカウントのネットワーク ACL バイパスのリソース ID を含む配列。 string[]
publicNetworkAccess パブリック ネットワークからの要求を許可するかどうか 'Disabled'
'Enabled'
'SecuredByPerimeter'
restoreParameters 復元に関する情報を示すパラメーター。 RestoreParameters
virtualNetworkRules Cosmos DB アカウント用に構成Virtual Network ACL 規則の一覧。 VirtualNetworkRule[]

AnalyticalStorageConfiguration

名前 説明
schemaType 分析ストレージのスキーマの種類について説明します。 'FullFidelity'
'WellDefined'

ApiProperties

名前 説明
serverVersion MongoDB アカウントの ServerVersion について説明します。 '3.2'
'3.6'
'4.0'
'4.2'

BackupPolicy

名前 説明
migrationState バックアップ ポリシー間の移行の状態を表す オブジェクト。 BackupPolicyMigrationState
オブジェクトの種類を設定する 継続的
定期的 (必須)

BackupPolicyMigrationState

名前 説明
startTime バックアップ ポリシーの移行が開始された時刻 (ISO-8601 形式)。 string
status バックアップ ポリシーの種類間の移行の状態について説明します。 'Completed'
'Failed'
'InProgress'
'Invalid'
targetType バックアップ ポリシー移行のターゲット バックアップ ポリシーの種類について説明します。 'Continuous'
'Periodic'

ContinuousModeBackupPolicy

名前 説明
type バックアップのモードについて説明します。 'Continuous' (必須)
continuousModeProperties 連続モード バックアップの構成値 ContinuousModeProperties

ContinuousModeProperties

名前 説明
レベル Continuos バックアップ モードの種類を示す列挙型 'Continuous30Days'
'Continuous7Days'

PeriodicModeBackupPolicy

名前 説明
type バックアップのモードについて説明します。 'Periodic' (必須)
periodicModeProperties 定期モード バックアップの構成値 PeriodicModeProperties

PeriodicModeProperties

名前 説明
backupIntervalInMinutes 2 つのバックアップ間の間隔を分単位で表す整数 INT

制約:
最小値 = 0
backupRetentionIntervalInHours 各バックアップが保持される時間 (時間単位) を表す整数 INT

制約:
最小値 = 0
backupStorageRedundancy バックアップ所在地の種類を示す列挙型 'Geo'
'Local'
'Zone'

機能

名前 説明
name Cosmos DB 機能の名前。 たとえば、"name": "EnableCassandra" です。 現在の値には、"EnableTable" と "EnableGremlin" も含まれます。 string

容量

名前 説明
totalThroughputLimit アカウントに課される合計スループット制限。 totalThroughputLimit が 2000 の場合、そのアカウントでプロビジョニングできる最大スループットの厳密な制限は 2000 になります。 totalThroughputLimit の -1 は、スループットのプロビジョニングに制限がないことを示します。 INT

ConsistencyPolicy

名前 説明
defaultConsistencyLevel Cosmos DB アカウントの既定の整合性レベルと構成設定。 'BoundedStaleness'
'ConsistentPrefix'
'Eventual'
'Session'
'Strong' (必須)
maxIntervalInSeconds 有界整合性整合性レベルで使用する場合、この値は許容される失効の時間 (秒単位) を表します。 この値に使用できる範囲は 5 から 86400 です。 defaultConsistencyPolicy が 'BoundedStaleness' に設定されている場合は必須です。 INT

制約:
最小値 = 5
最大値 = 86400
maxStalenessPrefix 有界整合性整合性レベルで使用する場合、この値は許容される古い要求の数を表します。 この値の許容範囲は、1 ~ 2,147,483,647 です。 defaultConsistencyPolicy が 'BoundedStaleness' に設定されている場合は必須です。 INT

制約:
最小値 = 1
最大値 = 2147483647

CorsPolicy

名前 説明
allowedHeaders 元のドメインが CORS 要求に指定できる要求ヘッダー。 string
allowedMethods 元のドメインが CORS 要求で使用できるメソッド (HTTP 要求の動詞)。 string
allowedOrigins CORS 経由でサービスに対して要求を行うために許可される配信元ドメイン。 string (必須)
exposedHeaders CORS 要求への応答で送信され、ブラウザーが要求の発行元に公開できる応答ヘッダー。 string
maxAgeInSeconds ブラウザーがプレフライト OPTIONS 要求をキャッシュする最大時間。 INT

制約:
最小値 = 1
最大値 = 2147483647

DiagnosticLogSettings

名前 説明
enableFullTextQuery "False"
'None'
'True': クエリをログに記録する詳細レベルについて説明します。

IpAddressOrRange

名前 説明
ipAddressOrRange 1 つの IPv4 アドレスまたは CIDR 形式の単一の IPv4 アドレス範囲。 IP アドレスは適切に書式設定されている必要があり、10.0.0.0/8、100.64.0.0/10、172.16.0.0/12、192.168.0.0/16 のいずれかの範囲に含めることはできません。IP アドレス フィルターでは適用できないためです。 有効な入力の例: "23.40.210.245" または "23.40.210.0/8" string

場所

名前 説明
failoverPriority リージョンのフェールオーバー優先度。 フェールオーバーの優先度が 0 の場合は、書き込みリージョンを示します。 フェールオーバー優先度の最大値 = (リージョンの合計数 - 1)。 フェールオーバーの優先度の値は、データベース アカウントが存在するリージョンごとに一意である必要があります。 INT

制約:
最小値 = 0
isZoneRedundant このリージョンが AvailabilityZone リージョンかどうかを示すフラグ [bool]
locationName 領域の名前。 string

RestoreParameters

名前 説明
databasesToRestore 復元に使用できる特定のデータベースの一覧。 DatabaseRestoreResource[]
gremlinDatabasesToRestore 復元に使用できる特定の gremlin データベースの一覧。 GremlinDatabaseRestoreResource[]
restoreMode 復元のモードについて説明します。 'PointInTime'
restoreSource 復元を開始する必要がある復元可能なデータベース アカウントの ID。 例: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} string
restoreTimestampInUtc アカウントを復元する必要がある時間 (ISO-8601 形式)。 string
restoreWithTtlDisabled 復元が正常に行われると、復元されたアカウントで Time-To-Live が無効になるかどうかを指定します。 [bool]
sourceBackupLocation 復元のソース バックアップの場所。 string
tablesToRestore 復元に使用できる特定のテーブルの一覧。 string[]

DatabaseRestoreResource

名前 説明
collectionNames 復元に使用できるコレクションの名前。 string[]
databaseName 復元に使用できるデータベースの名前。 string

GremlinDatabaseRestoreResource

名前 説明
databaseName 復元に使用できる gremlin データベースの名前。 string
graphNames 復元に使用できるグラフの名前。 string[]

VirtualNetworkRule

名前 説明
id サブネットのリソース ID(例: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName})。 string
ignoreMissingVNetServiceEndpoint 仮想ネットワークで vnet サービス エンドポイントが有効になる前に、ファイアウォール規則を作成します。 [bool]

クイック スタート テンプレート

次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。

Template 説明
Azure Container Service (AKS) で Jenkins を使用する CI/CD

Azure にデプロイする
コンテナーにより、アプリケーションの継続的なビルドとデプロイが非常に簡単になります。 Azure Container Service で Kubernetes を使用してこれらのコンテナーのデプロイを調整することで、コンテナーのレプリケート可能で管理しやすいクラスターを実現できます。 コンテナー イメージを生成するための継続的ビルドを設定し、オーケストレーションすることで、デプロイのスピードと信頼性を向上させることができます。
SQL Databaseを使用した Web アプリ、Azure Cosmos DB、Azure Search

Azure にデプロイする
このテンプレートは、Web アプリ、SQL Database、Azure Cosmos DB、Azure Search、Application Insights をプロビジョニングします。
Cassandra API 用の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、専用スループットのキースペースとテーブルを持つ 2 つのリージョンに Cassandra API 用の Azure Cosmos DB アカウントを作成します。
Cassandra API の自動スケーリング Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、キースペースと自動スケーリング スループットを持つテーブルを持つ 2 つのリージョンに Cassandra API 用の Azure Cosmos DB アカウントを作成します。
Azure CosmosDB アカウントを作成する

Azure にデプロイする
この ARM テンプレートは、必要最小限の値で CosmosDB アカウントをすばやく作成することを目的としています
複数のリージョンに Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、整合性レベルとフェールオーバーの種類を選択して、プライマリリージョンとセカンダリ リージョンを持つ任意のデータベース API の種類に対して Azure Cosmos DB アカウントを作成します。
Free レベルの Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートでは、共有スループットとコンテナーを持つデータベースを使用して、SQL API 用の Free レベルの Azure Cosmos DB アカウントを作成します。
Gremlin API 用の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、専用スループットを使用して、1 つのデータベースと 1 つのグラフを含む 2 つのリージョンに Gremlin API 用の Azure Cosmos DB アカウントを作成します。
Gremlin API 自動スケーリング用の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、自動スケーリング スループットを使用して、1 つのデータベースと 1 つのグラフを含む 2 つのリージョンに Gremlin API 用の Azure Cosmos DB アカウントを作成します。
MongoDB API 用の Azure Cosmos アカウントを作成する

Azure にデプロイする
このテンプレートでは、2 つのコレクションで共有スループットと専用スループットを使用して、MongoDB API 4.2 用の Azure Cosmos DB アカウントを 2 つのリージョンに作成します。
MongoDB API 自動スケーリング用の Azure Cosmos アカウントを作成する

Azure にデプロイする
このテンプレートでは、共有と専用の自動スケーリングの両方のスループットを使用して、MongoDB API 4.2 用の Azure Cosmos DB アカウントを 2 つのリージョンに作成します。
プライベート エンドポイントを使用して Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートでは、Cosmos アカウント、仮想ネットワーク、および Cosmos アカウントを仮想ネットワークに公開するプライベート エンドポイントが作成されます。
Core (SQL) API 用の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートでは、他の複数のオプションを含むスループットを持つデータベースとコンテナーを使用して、Core (SQL) API 用の Azure Cosmos アカウントを作成します。
分析ストアを使用した Azure Cosmos DB アカウント SQL API

Azure にデプロイする
このテンプレートでは、分析ストアで構成されたデータベースとコンテナーを使用して、Core (SQL) API 用の Azure Cosmos アカウントを作成します。
自動スケーリングを使用して Azure Cosmos DB アカウント SQL API を作成する

Azure にデプロイする
このテンプレートでは、他の複数のオプションを使用して、自動スケーリング スループットを持つデータベースとコンテナーを使用して、Core (SQL) API 用の Azure Cosmos アカウントを作成します。
Azure Cosmos DB Core (SQL) API ストアド プロシージャを作成する

Azure にデプロイする
このテンプレートでは、Core (SQL) API 用の Azure Cosmos DB アカウントと、ストアド プロシージャ、トリガー、およびユーザー定義関数を含むコンテナーを作成します。
Core (SQL) API 用の最小限の Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートでは、必要最小限のリソース プロパティのみを指定しながら、コア (SQL) API 用の Azure Cosmos DB アカウントを作成します。
SQL API と複数のコンテナーを使用して Azure Cosmos を作成する

Azure にデプロイする
このテンプレートでは、SQL API を使用して Cosmos コンテナーを作成し、複数のコンテナーを追加できます。
データ プレーン RBAC を使用して Azure Cosmos DB SQL アカウントを作成する

Azure にデプロイする
このテンプレートは、AAD ID 用の SQL Cosmos アカウント、ネイティブに管理されるロールの定義、およびネイティブに管理されるロールの割り当てを作成します。
SQL API 用のサーバーレス Azure Cosmos DB アカウントを作成する

Azure にデプロイする
このテンプレートは、Core (SQL) API 用のサーバーレス Azure Cosmos DB アカウントを作成します。
Table API 用の Azure Cosmos アカウントを作成する

Azure にデプロイする
このテンプレートでは、Table API 用の Azure Cosmos DB アカウントが 2 つのリージョンに作成され、スループットがプロビジョニングされた 1 つのテーブルが作成されます。
自動スケーリングを使用して Table API 用の Azure Cosmos アカウントを作成する

Azure にデプロイする
このテンプレートでは、2 つのリージョンに Table API 用の Azure Cosmos DB アカウントを作成し、自動スケーリング スループットを持つ 1 つのテーブルを作成します。
ゼロタッチの Azure Cosmos アカウントと Azure Web アプリを作成する

Azure にデプロイする
このテンプレートでは、Azure Cosmos アカウントを作成し、Cosmos DB エンドポイントとキーを Azure Web App 設定に挿入してから、GitHub から ASP MVC Web アプリをデプロイします。
Microsoft Defenderが有効になっている Cosmos DB アカウントを作成する

Azure にデプロイする
この ARM テンプレートを使用すると、Azure Cosmos DB 用のMicrosoft Defenderが有効になっている Azure Cosmos DB アカウントをデプロイできます。 Microsoft Defender for Azure Cosmos DB は、Azure ネイティブのセキュリティ層であり、ここでは Azure Cosmos DB アカウント内のデータベースを悪用しようとする試みが検出されます。 Azure Cosmos DB のMicrosoft Defenderは、潜在的な SQL インジェクション、Microsoft 脅威インテリジェンスに基づく既知の悪意のあるアクター、疑わしいアクセス パターン、および侵害された ID または悪意のある内部関係者によるデータベースの潜在的な悪用を検出します。
Cosmos DB 接続を使用して Azure Data Explorer DB をデプロイする

Azure にデプロイする
Cosmos DB 接続を使用して Azure Data Explorer DB をデプロイします。
Web アプリを使用した Azure Cosmos DB アカウント

Azure にデプロイする
このテンプレートは、Azure Cosmos DB アカウント、App Service プランをデプロイし、App Service プランに Web アプリを作成します。 また、Azure Cosmos DB アカウント エンドポイントを参照する 2 つのアプリケーション設定を Web アプリに追加します。 このようにして、Web アプリにデプロイされたソリューションは、これらの設定を使用して Azure Cosmos DB アカウント エンドポイントに接続できます。

Terraform (AzAPI プロバイダー) リソース定義

databaseAccounts リソースの種類は、次を対象とする操作でデプロイできます。

  • リソース グループ

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.DocumentDB/databaseAccounts リソースを作成するには、次の Terraform をテンプレートに追加します。

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"
  })
}

BackupPolicy オブジェクト

オブジェクトの を指定するには、type プロパティを設定します。

[継続的] には、次の値を使用します。

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

定期的な場合は、次の値を使用します。

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

プロパティ値

databaseAccounts

名前 説明
type リソースの種類 "Microsoft.DocumentDB/databaseAccounts@2024-02-15-preview"
name リソース名 string (必須)

文字制限: 3 から 44

有効な文字:
小文字、数字、およびハイフン。

先頭には小文字または数字を使用します。

リソース名は、Azure 全体で一意である必要があります。
location リソースが属しているリソース グループの場所。 string
parent_id リソース グループにデプロイするには、そのリソース グループの ID を使用します。 string (必須)
tags タグは、リソースを記述するキーと値のペアの一覧です。 これらのタグはリソース グループをまたがってこのリソースを表示およびグループ化する際に使用できます。 リソースには最大 15 個のタグを指定できます。 各タグには 128 文字以内のキーと、256 文字以内の値が必要です。 たとえば、テンプレートの種類の既定のエクスペリエンスは、"defaultExperience": "Cassandra" に設定されます。 現在の "defaultExperience" 値には、"Table"、"Graph"、"DocumentDB"、"MongoDB" も含まれます。 タグの名前と値のディクショナリ。
kind データベース アカウントの種類を示します。 これは、データベース アカウントの作成時にのみ設定できます。 "GlobalDocumentDB"
"MongoDB"
"Parse"
identity リソースの ID。 ManagedServiceIdentity
properties Azure Cosmos DB データベース アカウントを作成および更新するためのプロパティ。 DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou... (必須)

ManagedServiceIdentity

名前 説明
type "SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned": リソースに使用される ID の種類。 型 "SystemAssigned,UserAssigned" には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 "None" では、サービスから ID が削除されます。
identity_ids リソースに関連付けられているユーザー ID の一覧。 ユーザー ID ディクショナリ キー参照は、"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}" という形式の ARM リソース ID になります。 ユーザー ID ID の配列。

ManagedServiceIdentityUserAssignedIdentities

名前 説明
{カスタマイズされたプロパティ} Components1Jq1T4ISchemasManagedserviceidentityProper...

Components1Jq1T4ISchemasManagedserviceidentityProper...

このオブジェクトには、デプロイ中に設定するプロパティは含まれません。 すべてのプロパティは ReadOnly です。

DatabaseAccountCreateUpdatePropertiesOrDatabaseAccou...

名前 説明
analyticalStorageConfiguration 分析ストレージ固有のプロパティ。 AnalyticalStorageConfiguration
apiProperties API 固有のプロパティ。 現在、MongoDB API でのみサポートされています。 ApiProperties
backupPolicy アカウントでバックアップを作成するためのポリシーを表す オブジェクト。 BackupPolicy
capabilities アカウントの Cosmos DB 機能の一覧 Capability[]
capacity アカウントの容量の適用に関連するすべてのプロパティを表す オブジェクト。 [容量]
connectorOffer Cosmos DB データベース C* アカウントの cassandra コネクタ オファーの種類。 "Small"
consistencyPolicy Cosmos DB アカウントの整合性ポリシー。 ConsistencyPolicy
cors Cosmos DB データベース アカウントの CORS ポリシー。 CorsPolicy[]
createMode アカウントの作成モードを示す列挙型。 "Default"
"PointInTimeRestore"
"復元"
customerManagedKeyStatus アカウントのカスタマー マネージド キー機能の状態を示します。 エラーが発生した場合、プロパティはトラブルシューティング ガイダンスを提供します。 string
databaseAccountOfferType データベースのオファーの種類 "Standard" (必須)
defaultIdentity カスタマー マネージド キーなどの機能で使用されるキー コンテナーにアクセスするための既定の ID。 既定の ID は、ユーザーが明示的に設定する必要があります。 "FirstPartyIdentity"、"SystemAssignedIdentity" などを指定できます。 string
defaultPriorityLevel 優先度ベースの実行の要求の既定の優先度レベルを示す列挙型。 "High"
"Low"
diagnosticLogSettings Cosmos DB アカウントのさまざまな診断ログ設定を表す オブジェクト。 DiagnosticLogSettings
disableKeyBasedMetadataWriteAccess アカウント キーを使用してメタデータ リソース (データベース、コンテナー、スループット) に対する書き込み操作を無効にする [bool]
disableLocalAuth ローカル認証をオプトアウトし、MSI と AAD のみを認証専用に使用できることを確認します。 [bool]
enableAnalyticalStorage ストレージ分析を有効にするかどうかを示すフラグ。 [bool]
enableAutomaticFailover 障害が原因でリージョンが使用できないまれな場合に、書き込みリージョンの自動フェールオーバーを有効にします。 自動フェールオーバーでは、アカウントの新しい書き込みリージョンが作成され、アカウント用に構成されたフェールオーバーの優先順位に基づいて選択されます。 [bool]
enableBurstCapacity アカウントでバースト容量プレビュー機能を有効または無効にすることを示すフラグ [bool]
enableCassandraConnector Cosmos DB C* アカウントで cassandra コネクタを有効にします [bool]
enableFreeTier Free レベルが有効かどうかを示すフラグ。 [bool]
enableMaterializedViews Cosmos DB アカウントで MaterializedViews を有効にするかどうかを示すフラグ [bool]
enableMultipleWriteLocations アカウントを複数の場所に書き込むことができます [bool]
enablePartitionMerge アカウントでのパーティションマージ機能の有効化/無効化を示すフラグ [bool]
enablePerRegionPerPartitionAutoscale アカウントでパーティションごとの自動スケーリング プレビュー機能 Per-Region 有効または無効にすることを示すフラグ [bool]
enablePriorityBasedExecution アカウントで優先度ベースの実行プレビュー機能を有効または無効にすることを示すフラグ [bool]
ipRules IpRules の一覧。 IpAddressOrRange[]
isVirtualNetworkFilterEnabled ACL 規則を有効または無効にするかどうかを示すフラグVirtual Network設定します。 [bool]
keyVaultKeyUri キー コンテナーの URI string
locations Cosmos DB アカウントで有効になっている georeplication の場所を含む配列。 Location[] (必須)
minimalTlsVersion 許可されている Tls の最小バージョンを示します。 Tls 1.2 でのみ動作する Cassandra と Mongo API を除き、既定値は Tls 1.0 です。 "Tls"
"Tls11"
"Tls12"
networkAclBypass "AzureServices"
"None": ファイアウォール チェックをバイパスできるサービスを示します。
networkAclBypassResourceIds Cosmos DB アカウントのネットワーク ACL バイパスのリソース ID を含む配列。 string[]
publicNetworkAccess パブリック ネットワークからの要求を許可するかどうか "無効"
"有効"
"SecuredByPerimeter"
restoreParameters 復元に関する情報を示すパラメーター。 RestoreParameters
virtualNetworkRules Cosmos DB アカウント用に構成Virtual Network ACL 規則の一覧。 VirtualNetworkRule[]

AnalyticalStorageConfiguration

名前 説明
schemaType 分析ストレージのスキーマの種類について説明します。 "FullFidelity"
"WellDefined"

ApiProperties

名前 説明
serverVersion MongoDB アカウントの ServerVersion について説明します。 "3.2"
"3.6"
"4.0"
"4.2"

BackupPolicy

名前 説明
migrationState バックアップ ポリシー間の移行の状態を表す オブジェクト。 BackupPolicyMigrationState
オブジェクトの種類を設定する 継続的
定期的 (必須)

BackupPolicyMigrationState

名前 説明
startTime バックアップ ポリシーの移行が開始された時刻 (ISO-8601 形式)。 string
status バックアップ ポリシーの種類間の移行の状態について説明します。 "完了"
"Failed"
"InProgress"
"無効"
targetType バックアップ ポリシー移行のターゲット バックアップ ポリシーの種類について説明します。 "Continuous"
"Periodic"

ContinuousModeBackupPolicy

名前 説明
type バックアップのモードについて説明します。 "Continuous" (必須)
continuousModeProperties 連続モード バックアップの構成値 ContinuousModeProperties

ContinuousModeProperties

名前 説明
レベル Continuos バックアップ モードの種類を示す列挙型 "Continuous30Days"
"Continuous7Days"

PeriodicModeBackupPolicy

名前 説明
type バックアップのモードについて説明します。 "Periodic" (必須)
periodicModeProperties 定期モード バックアップの構成値 PeriodicModeProperties

PeriodicModeProperties

名前 説明
backupIntervalInMinutes 2 つのバックアップ間の間隔を分単位で表す整数 INT

制約:
最小値 = 0
backupRetentionIntervalInHours 各バックアップが保持される時間 (時間単位) を表す整数 INT

制約:
最小値 = 0
backupStorageRedundancy バックアップ所在地の種類を示す列挙型 "Geo"
"Local"
"Zone"

機能

名前 説明
name Cosmos DB 機能の名前。 たとえば、"name": "EnableCassandra" です。 現在の値には、"EnableTable" と "EnableGremlin" も含まれます。 string

容量

名前 説明
totalThroughputLimit アカウントに課される合計スループット制限。 totalThroughputLimit が 2000 の場合、そのアカウントでプロビジョニングできる最大スループットの厳密な制限は 2000 になります。 totalThroughputLimit の -1 は、スループットのプロビジョニングに制限がないことを示します。 INT

ConsistencyPolicy

名前 説明
defaultConsistencyLevel Cosmos DB アカウントの既定の整合性レベルと構成設定。 "BoundedStaleness"
"ConsistentPrefix"
"Eventual"
"セッション"
"Strong" (必須)
maxIntervalInSeconds 有界整合性整合性レベルで使用する場合、この値は許容される失効の時間 (秒単位) を表します。 この値に使用できる範囲は 5 から 86400 です。 defaultConsistencyPolicy が 'BoundedStaleness' に設定されている場合は必須です。 INT

制約:
最小値 = 5
最大値 = 86400
maxStalenessPrefix 有界整合性整合性レベルで使用する場合、この値は許容される古い要求の数を表します。 この値の許容範囲は、1 ~ 2,147,483,647 です。 defaultConsistencyPolicy が 'BoundedStaleness' に設定されている場合は必須です。 INT

制約:
最小値 = 1
最大値 = 2147483647

CorsPolicy

名前 説明
allowedHeaders 元のドメインが CORS 要求に指定できる要求ヘッダー。 string
allowedMethods 元のドメインが CORS 要求で使用できるメソッド (HTTP 要求の動詞)。 string
allowedOrigins CORS 経由でサービスに対して要求を行うために許可される配信元ドメイン。 string (必須)
exposedHeaders CORS 要求への応答で送信され、ブラウザーが要求の発行元に公開できる応答ヘッダー。 string
maxAgeInSeconds ブラウザーがプレフライト OPTIONS 要求をキャッシュする最大時間。 INT

制約:
最小値 = 1
最大値 = 2147483647

DiagnosticLogSettings

名前 説明
enableFullTextQuery "False"
"None"
"True": クエリをログに記録する詳細レベルについて説明します。

IpAddressOrRange

名前 説明
ipAddressOrRange 1 つの IPv4 アドレスまたは CIDR 形式の単一の IPv4 アドレス範囲。 IP アドレスは適切に書式設定されている必要があり、10.0.0.0/8、100.64.0.0/10、172.16.0.0/12、192.168.0.0/16 のいずれかの範囲に含めることはできません。IP アドレス フィルターでは適用できないためです。 有効な入力の例: "23.40.210.245" または "23.40.210.0/8" string

場所

名前 説明
failoverPriority リージョンのフェールオーバー優先度。 フェールオーバーの優先度が 0 の場合は、書き込みリージョンを示します。 フェールオーバー優先度の最大値 = (リージョンの合計数 - 1)。 フェールオーバー優先度の値は、データベース アカウントが存在するリージョンごとに一意である必要があります。 INT

制約:
最小値 = 0
isZoneRedundant このリージョンが AvailabilityZone リージョンであるかどうかを示すフラグ [bool]
locationName 領域の名前。 string

RestoreParameters

名前 説明
databasesToRestore 復元に使用できる特定のデータベースの一覧。 DatabaseRestoreResource[]
gremlinDatabasesToRestore 復元に使用できる特定の gremlin データベースの一覧。 GremlinDatabaseRestoreResource[]
restoreMode 復元のモードについて説明します。 "PointInTime"
restoreSource 復元を開始する必要がある復元可能なデータベース アカウントの ID。 例: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} string
restoreTimestampInUtc アカウントを復元する必要がある時間 (ISO-8601 形式)。 string
restoreWithTtlDisabled 復元が成功したときに、復元されたアカウントで Time-To-Live を無効にするかどうかを指定します。 [bool]
sourceBackupLocation 復元のソース バックアップの場所。 string
tablesToRestore 復元に使用できる特定のテーブルの一覧。 string[]

DatabaseRestoreResource

名前 説明
collectionNames 復元に使用できるコレクションの名前。 string[]
databaseName 復元に使用できるデータベースの名前。 string

GremlinDatabaseRestoreResource

名前 説明
databaseName 復元に使用できる gremlin データベースの名前。 string
graphNames 復元に使用できるグラフの名前。 string[]

VirtualNetworkRule

名前 説明
id サブネットのリソース ID (例: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName})。 string
ignoreMissingVNetServiceEndpoint 仮想ネットワークで vnet サービス エンドポイントが有効にする前に、ファイアウォール規則を作成します。 [bool]