기본/보조 키는 데이터베이스 계정의 모든 관리 리소스에 대한 액세스 권한을 제공합니다. 기본/보조 키:
계정, 데이터베이스, 사용자 및 사용 권한에 대한 액세스를 제공합니다.
컨테이너 및 문서에 대한 세분화된 액세스를 제공하는 데 사용할 수 없습니다.
계정 생성 중에 만들어집니다.
언제든지 다시 생성할 수 있습니다.
Important
사용 가능한 가장 안전한 인증 흐름을 사용하는 것이 권장됩니다. 이 절차에서 설명된 인증 흐름은 다른 흐름에는 없는 위험을 전달하며, 애플리케이션에서 매우 높은 신뢰 수준을 요구합니다. 이 흐름은 관리 ID와 같은 보다 안전한 다른 흐름을 실행할 수 없는 경우에만 사용되어야 합니다.
Azure Cosmos DB의 경우 Microsoft Entra 인증은 사용 가능한 가장 안전한 인증 메커니즘입니다. API에 대한 적절한 보안 가이드를 검토합니다.
이 예제 Bicep 템플릿은 기존 Azure Cosmos DB 계정에 대한 모든 자격 증명을 출력합니다.
metadata description = 'Gets all keys and connection strings for an Azure Cosmos DB account.'
@description('The name of the Azure Cosmos DB account.')
param accountName string
resource account 'Microsoft.DocumentDB/databaseAccounts@2024-05-15' existing = {
name: accountName
}
output endpoint string = account.properties.documentEndpoint
var keys = account.listKeys()
output keys object = {
primary: {
readWrite: keys.primaryMasterKey
readOnly: keys.primaryReadonlyMasterKey
}
secondary: {
readWrite: keys.secondaryMasterKey
readOnly: keys.secondaryReadonlyMasterKey
}
}
var connectionStrings = account.listConnectionStrings()
output connectionStrings object = {
primary: {
readWrite: connectionStrings.connectionStrings[0].connectionString
readOnly: connectionStrings.connectionStrings[1].connectionString
}
secondary: {
readWrite: connectionStrings.connectionStrings[2].connectionString
readOnly: connectionStrings.connectionStrings[3].connectionString
}
}
Warning
이 Bicep 템플릿은 Bicep에 대한 Linter 경고를 트리거합니다. 이상적으로 프로덕션 Bicep 템플릿은 비밀을 출력하지 않아야 합니다. 이 샘플은 의도적으로 이 linter 경고를 억제하지 않습니다. 자세한 내용은 linter 규칙을 참조 하세요. 출력에 비밀이 포함되어서는 안 됩니다.