Diagnostisera och felsöka undantag som inte är tillåtna i Azure Cosmos DB

GÄLLER FÖR: NoSQL

HTTP-statuskoden 403 representerar att begäran inte kan slutföras.

Brandväggsblockeringsbegäranden

Dataplansbegäranden kan komma till Azure Cosmos DB via följande tre sökvägar.

  • Offentligt Internet (IPv4)
  • Tjänstslutpunkt
  • Privat slutpunkt

När en dataplansbegäran blockeras med 403 Förbjuden anger felmeddelandet via vilken av de tre sökvägarna ovan som begäran kom till Azure Cosmos DB.

  • Request originated from client IP {...} through public internet.
  • Request originated from client VNET through service endpoint.
  • Request originated from client VNET through private endpoint.

Lösning

Förstå via vilken sökväg begäran förväntas komma till Azure Cosmos DB.

  • Om felmeddelandet visar att begäran inte kom till Azure Cosmos DB via den förväntade sökvägen är det troligt att problemet beror på konfigurationen på klientsidan. Dubbelkolla konfigurationen på klientsidan genom att följa dokumentationen.
  • Om begäran kom till Azure Cosmos DB via den förväntade sökvägen blockerades begäran eftersom källnätverksidentiteten inte har konfigurerats för att tillåtas för kontot. Kontrollera inställningarna för kontot beroende på vilken sökväg begäran kom till Azure Cosmos DB.
    • Offentligt Internet: kontrollera kontots konfigurationer för offentligt nätverk och IP-intervallfilter.
    • Tjänstslutpunkt: Kontrollera kontots konfigurationer för offentligt nätverk och VNET-filter.
    • Privat slutpunkt: Kontrollera kontots privata slutpunktskonfiguration och klientens privata DNS-konfiguration. Detta kan bero på åtkomst till kontot från en privat slutpunkt som har konfigurerats för ett annat konto.

Om du nyligen har uppdaterat kontots brandväggskonfigurationer bör du tänka på att det kan ta upp till 15 minuter att göra ändringar.

Partitionsnyckeln överskrider lagringen

I det här scenariot är det vanligt att se fel som de nedan:

Response status code does not indicate success: Forbidden (403); Substatus: 1014
Partition key reached maximum size of {...} GB

Lösning

Det här felet innebär att din aktuella partitioneringsdesign och arbetsbelastning försöker lagra mer än den tillåtna mängden data för ett visst partitionsnyckelvärde. Det finns ingen gräns för antalet logiska partitioner i containern, men storleken på data som varje logisk partition kan lagra är begränsad. Du kan kontakta supporten för förtydliganden.

Icke-dataåtgärder tillåts inte

Det här scenariot inträffar när du försöker utföra icke-dataåtgärder med hjälp av Microsoft Entra-identiteter. I det här scenariot är det vanligt att se fel som de nedan:

Operation 'POST' on resource 'calls' is not allowed through Azure Cosmos DB endpoint
Forbidden (403); Substatus: 5300; The given request [PUT ...] cannot be authorized by AAD token in data plane.

Lösning

Utför åtgärden via Azure Resource Manager, Azure-portalen, Azure CLI eller Azure PowerShell. Om du använder Azure Functions Azure Cosmos DB-utlösaren kontrollerar du att CreateLeaseContainerIfNotExists utlösarens egenskap inte är inställd på true. Om du använder Microsoft Entra-identiteter blockeras alla icke-dataåtgärder, till exempel att skapa lånecontainern.

Nästa steg