Compartir vía


Deshabilitación de la autenticación basada en certificados con Azure Cosmos DB for Apache Cassandra

SE APLICA A: Cassandra

En este artículo se describe el proceso de deshabilitación de la autorización basada en claves (o autenticación de credenciales de contraseña de propietario de recursos) para una cuenta de Azure Cosmos DB for Cassandra.

Deshabilitar la autorización basada en claves impide que la cuenta se use sin el método de autenticación de Microsoft Entra más seguro. Este procedimiento es un paso que se debe realizar en nuevas cuentas en cargas de trabajo seguras. Como alternativa, realice este procedimiento en las cuentas existentes que se migran a un patrón de carga de trabajo seguro.

Requisitos previos

Deshabilitación de la autenticación basada en claves

En primer lugar, deshabilite la autenticación basada en claves en la cuenta existente para que las aplicaciones deban usar la autenticación de Microsoft Entra. Use az resource update para modificar properties.disableLocalAuth de la cuenta existente.

az resource update \
    --resource-group "<name-of-existing-resource-group>" \
    --name "<name-of-existing-account>" \
    --resource-type "Microsoft.DocumentDB/databaseAccounts" \
    --set properties.disableLocalAuth=true \
    --set properties.disableKeyBasedMetadataWriteAccess=true

En primer lugar, cree una nueva cuenta con la autenticación basada en claves deshabilitada para que las aplicaciones deban usar la autenticación de Microsoft Entra.

  1. Cree un nuevo archivo de Bicep para implementar la nueva cuenta con la autenticación basada en claves deshabilitada. Asigne al archivo el nombre deploy-new-account.bicep.

    metadata description = 'Deploys a new Azure Cosmos DB account with key-based auth disabled.'
    
    @description('Name of the Azure Cosmos DB account.')
    param name string = 'csms-${uniqueString(resourceGroup().id)}'
    
    @description('Primary location for the Azure Cosmos DB account.')
    param location string = resourceGroup().location
    
    resource account 'Microsoft.DocumentDB/databaseAccounts@2024-05-15' = {
      name: name
      location: location
      kind: 'GlobalDocumentDB'
      properties: {
        databaseAccountOfferType: 'Standard'
        locations: [
          {
            locationName: location
          }
        ]
        disableLocalAuth: true,
        disableKeyBasedMetadataWriteAccess: true
      }
    }
    
  2. Use az deployment group create para implementar el archivo de Bicep con la nueva cuenta.

    az deployment group create \
        --resource-group "<name-of-existing-resource-group>" \
        --template-file deploy-new-account.bicep
    

En primer lugar, deshabilite la autenticación basada en claves en la cuenta existente para que las aplicaciones deban usar la autenticación de Microsoft Entra. Use Get-AzResource y Set-AzResource para leer y actualizar la cuenta existente respectivamente.

$parameters = @{
    ResourceGroupName = "<name-of-existing-resource-group>"
    ResourceName = "<name-of-existing-account>"
    ResourceType = "Microsoft.DocumentDB/databaseAccounts"
}
$resource = Get-AzResource @parameters

$resource.Properties.DisableLocalAuth = $true
$resource.Properties.DisableKeyBasedMetadataWriteAccess = $true

$resource | Set-AzResource -Force