Microsoft.DocumentDB-DatenbankAccounts/sqlRoleAssignments 2021-04-15

Bicep-Ressourcendefinition

Der Ressourcentyp "databaseAccounts/sqlRoleAssignments" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie unter Änderungsprotokoll.

Verwendungsbeispiele

Bicep-Beispiele

Ein grundlegendes Beispiel für die Bereitstellung der Cosmos DB SQL-Rollenzuweisung.

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

resource sqlRoleDefinition 'Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions@2021-10-15' existing = {
  name: '00000000-0000-0000-0000-000000000001'
  parent: databaseAccount
}

resource databaseAccount 'Microsoft.DocumentDB/databaseAccounts@2021-10-15' = {
  name: resourceName
  location: location
  kind: 'GlobalDocumentDB'
  properties: {
    capabilities: []
    consistencyPolicy: {
      defaultConsistencyLevel: 'Session'
      maxIntervalInSeconds: 5
      maxStalenessPrefix: 100
    }
    databaseAccountOfferType: 'Standard'
    defaultIdentity: 'FirstPartyIdentity'
    disableKeyBasedMetadataWriteAccess: false
    disableLocalAuth: false
    enableAnalyticalStorage: false
    enableAutomaticFailover: false
    enableFreeTier: false
    enableMultipleWriteLocations: false
    ipRules: []
    isVirtualNetworkFilterEnabled: false
    locations: [
      {
        failoverPriority: 0
        isZoneRedundant: false
        locationName: 'West Europe'
      }
    ]
    networkAclBypass: 'None'
    networkAclBypassResourceIds: []
    publicNetworkAccess: 'Enabled'
    virtualNetworkRules: []
  }
}

resource sqlRoleAssignment 'Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments@2021-10-15' = {
  name: 'ff419bf7-f8ca-ef51-00d2-3576700c341b'
  parent: databaseAccount
  properties: {
    principalId: cluster.identity.principalId
    roleDefinitionId: sqlRoleDefinition.id
    scope: databaseAccount.id
  }
}

resource cluster 'Microsoft.Kusto/clusters@2023-05-02' = {
  name: resourceName
  location: location
  sku: {
    capacity: 1
    name: 'Dev(No SLA)_Standard_D11_v2'
    tier: 'Basic'
  }
  properties: {
    enableAutoStop: true
    enableDiskEncryption: false
    enableDoubleEncryption: false
    enablePurge: false
    enableStreamingIngest: false
    engineType: 'V2'
    publicIPType: 'IPv4'
    publicNetworkAccess: 'Enabled'
    restrictOutboundNetworkAccess: 'Disabled'
    trustedExternalTenants: []
  }
}

resource database 'Microsoft.Kusto/clusters/databases@2023-05-02' = {
  name: resourceName
  location: location
  parent: cluster
  kind: 'ReadWrite'
  properties: {}
}

Von Azure verifizierte Module

Die folgenden Azure Verified Modules können verwendet werden, um diesen Ressourcentyp bereitzustellen.

Modul Beschreibung
Cosmos DB – SQL-Rollenzuweisung AVM-Kindmodul für Cosmos DB – SQL-Rollenzuweisung

Azure-Schnellstartbeispiele

Die folgenden Azure-Schnellstartvorlagen Bicep-Beispiele für die Bereitstellung dieses Ressourcentyps enthalten.

Bicep-Datei Beschreibung
Erstellen eines Azure Cosmos DB SQL-Kontos mit RBAC- Diese Vorlage erstellt ein SQL Cosmos-Konto, eine systemeigene verwaltete Rollendefinition und eine systemeigene verwaltete Rollenzuweisung für eine AAD-Identität.
Bereitstellen von Azure Data Explorer DB mit Cosmos DB-Verbindung Bereitstellen von Azure Data Explorer DB mit Cosmos DB-Verbindung.

Ressourcenformat

Um eine Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments-Ressource zu erstellen, fügen Sie der Vorlage den folgenden Bicep hinzu.

resource symbolicname 'Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments@2021-04-15' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    principalId: 'string'
    roleDefinitionId: 'string'
    scope: 'string'
  }
}

Eigenschaftswerte

Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments

Name Beschreibung Wert
Name Der Ressourcenname Zeichenfolge (erforderlich)
Elternteil In Bicep können Sie die übergeordnete Ressource für eine untergeordnete Ressource angeben. Sie müssen diese Eigenschaft nur hinzufügen, wenn die untergeordnete Ressource außerhalb der übergeordneten Ressource deklariert wird.

Weitere Informationen finden Sie unter Untergeordnete Ressource außerhalb der übergeordneten Ressource.
Symbolischer Name für Ressource des Typs: databaseAccounts
Eigenschaften Eigenschaften zum Erstellen und Aktualisieren einer SQL-Rollenzuweisung in Azure Cosmos DB. SqlRoleAssignmentResource-

SqlRoleAssignmentResource

Name Beschreibung Wert
Prinzipal-ID Der eindeutige Bezeichner für den zugeordneten AAD-Prinzipal im AAD-Diagramm, auf das der Zugriff über diese Rollenzuweisung gewährt wird. Die Mandanten-ID für den Prinzipal wird mithilfe des mandanten abgeleitet, der dem Abonnement zugeordnet ist. Schnur
roleDefinitionId Der eindeutige Bezeichner für die zugeordnete Rollendefinition. Schnur
Umfang Der Ressourcenpfad der Datenebene, für den der Zugriff über diese Rollenzuweisung gewährt wird. Schnur

ARM-Vorlagenressourcendefinition

Der Ressourcentyp "databaseAccounts/sqlRoleAssignments" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

Verwendungsbeispiele

Azure-Schnellstartvorlagen

Die folgenden Azure-Schnellstartvorlagen diesen Ressourcentyp bereitstellen.

Schablone Beschreibung
Erstellen eines Azure Cosmos DB SQL-Kontos mit RBAC-

Bereitstellen in Azure
Diese Vorlage erstellt ein SQL Cosmos-Konto, eine systemeigene verwaltete Rollendefinition und eine systemeigene verwaltete Rollenzuweisung für eine AAD-Identität.
Bereitstellen von Azure Data Explorer DB mit Cosmos DB-Verbindung

Bereitstellen in Azure
Bereitstellen von Azure Data Explorer DB mit Cosmos DB-Verbindung.

Ressourcenformat

Um eine Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments-Ressource zu erstellen, fügen Sie der Vorlage den folgenden JSON-Code hinzu.

{
  "type": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments",
  "apiVersion": "2021-04-15",
  "name": "string",
  "properties": {
    "principalId": "string",
    "roleDefinitionId": "string",
    "scope": "string"
  }
}

Eigenschaftswerte

Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments

Name Beschreibung Wert
apiVersion Die API-Version '2021-04-15'
Name Der Ressourcenname Zeichenfolge (erforderlich)
Eigenschaften Eigenschaften zum Erstellen und Aktualisieren einer SQL-Rollenzuweisung in Azure Cosmos DB. SqlRoleAssignmentResource-
Art Der Ressourcentyp 'Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments'

SqlRoleAssignmentResource

Name Beschreibung Wert
Prinzipal-ID Der eindeutige Bezeichner für den zugeordneten AAD-Prinzipal im AAD-Diagramm, auf das der Zugriff über diese Rollenzuweisung gewährt wird. Die Mandanten-ID für den Prinzipal wird mithilfe des mandanten abgeleitet, der dem Abonnement zugeordnet ist. Schnur
roleDefinitionId Der eindeutige Bezeichner für die zugeordnete Rollendefinition. Schnur
Umfang Der Ressourcenpfad der Datenebene, für den der Zugriff über diese Rollenzuweisung gewährt wird. Schnur

Terraform -Ressourcendefinition (AzAPI-Anbieter)

Der Ressourcentyp "databaseAccounts/sqlRoleAssignments" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

  • Ressourcengruppen Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie unter Change Log.

Verwendungsbeispiele

Terraform-Beispiele

Ein grundlegendes Beispiel für die Bereitstellung der Cosmos DB SQL-Rollenzuweisung.

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

provider "azapi" {
  skip_provider_registration = false
}

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

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

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

resource "azapi_resource" "cluster" {
  type      = "Microsoft.Kusto/clusters@2023-05-02"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  identity {
    type         = "SystemAssigned"
    identity_ids = []
  }
  body = {
    properties = {
      enableAutoStop                = true
      enableDiskEncryption          = false
      enableDoubleEncryption        = false
      enablePurge                   = false
      enableStreamingIngest         = false
      engineType                    = "V2"
      publicIPType                  = "IPv4"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      trustedExternalTenants = [
      ]
    }
    sku = {
      capacity = 1
      name     = "Dev(No SLA)_Standard_D11_v2"
      tier     = "Basic"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "databaseAccount" {
  type      = "Microsoft.DocumentDB/databaseAccounts@2021-10-15"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    kind = "GlobalDocumentDB"
    properties = {
      capabilities = [
      ]
      consistencyPolicy = {
        defaultConsistencyLevel = "Session"
        maxIntervalInSeconds    = 5
        maxStalenessPrefix      = 100
      }
      databaseAccountOfferType           = "Standard"
      defaultIdentity                    = "FirstPartyIdentity"
      disableKeyBasedMetadataWriteAccess = false
      disableLocalAuth                   = false
      enableAnalyticalStorage            = false
      enableAutomaticFailover            = false
      enableFreeTier                     = false
      enableMultipleWriteLocations       = false
      ipRules = [
      ]
      isVirtualNetworkFilterEnabled = false
      locations = [
        {
          failoverPriority = 0
          isZoneRedundant  = false
          locationName     = "West Europe"
        },
      ]
      networkAclBypass = "None"
      networkAclBypassResourceIds = [
      ]
      publicNetworkAccess = "Enabled"
      virtualNetworkRules = [
      ]
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource" "sqlRoleDefinition" {
  type                   = "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions@2021-10-15"
  parent_id              = azapi_resource.databaseAccount.id
  name                   = "00000000-0000-0000-0000-000000000001"
  response_export_values = ["*"]
}

resource "azapi_resource" "database" {
  type      = "Microsoft.Kusto/clusters/databases@2023-05-02"
  parent_id = azapi_resource.cluster.id
  name      = var.resource_name
  location  = var.location
  body = {
    kind = "ReadWrite"
    properties = {
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "sqlRoleAssignment" {
  type      = "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments@2021-10-15"
  parent_id = azapi_resource.databaseAccount.id
  name      = "ff419bf7-f8ca-ef51-00d2-3576700c341b"
  body = {
    properties = {
      principalId      = azapi_resource.cluster.output.identity.principalId
      roleDefinitionId = data.azapi_resource.sqlRoleDefinition.id
      scope            = azapi_resource.databaseAccount.id
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Ressourcenformat

Um eine Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments-Ressource zu erstellen, fügen Sie Ihrer Vorlage die folgende Terraform hinzu.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments@2021-04-15"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      principalId = "string"
      roleDefinitionId = "string"
      scope = "string"
    }
  }
}

Eigenschaftswerte

Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments

Name Beschreibung Wert
Name Der Ressourcenname Zeichenfolge (erforderlich)
parent_id Die ID der Ressource, die das übergeordnete Element für diese Ressource ist. ID für Ressource des Typs: databaseAccounts
Eigenschaften Eigenschaften zum Erstellen und Aktualisieren einer SQL-Rollenzuweisung in Azure Cosmos DB. SqlRoleAssignmentResource-
Art Der Ressourcentyp "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments@2021-04-15"

SqlRoleAssignmentResource

Name Beschreibung Wert
Prinzipal-ID Der eindeutige Bezeichner für den zugeordneten AAD-Prinzipal im AAD-Diagramm, auf das der Zugriff über diese Rollenzuweisung gewährt wird. Die Mandanten-ID für den Prinzipal wird mithilfe des mandanten abgeleitet, der dem Abonnement zugeordnet ist. Schnur
roleDefinitionId Der eindeutige Bezeichner für die zugeordnete Rollendefinition. Schnur
Umfang Der Ressourcenpfad der Datenebene, für den der Zugriff über diese Rollenzuweisung gewährt wird. Schnur