Sdílet prostřednictvím


Diagnostika a řešení potíží s výjimkami zakázáno ve službě Azure Cosmos DB

PLATÍ PRO: NoSQL

Stavový kód HTTP 403 představuje požadavek zakázáno dokončit.

Blokování požadavků brány firewall

Požadavky na rovinu dat můžou do služby Azure Cosmos DB přicházet prostřednictvím následujících tří cest.

  • Veřejný internet (IPv4)
  • Koncový bod služby
  • Privátní koncový bod

Pokud je požadavek na rovinu dat zablokovaný s chybou 403 Zakázáno, chybová zpráva určuje, kterou z předchozích tří cest žádost přišla do služby 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.

Řešení

Seznamte se s tím, jakou cestou se očekává, že požadavek přijde do služby Azure Cosmos DB.

  • Pokud chybová zpráva ukazuje, že požadavek nepřišel do služby Azure Cosmos DB přes očekávanou cestu, pravděpodobně bude problém s nastavením na straně klienta. Pečlivě zkontrolujte nastavení na straně klienta podle dokumentace.
  • Pokud žádost přišla do Služby Azure Cosmos DB přes očekávanou cestu, požadavek byl zablokovaný, protože pro účet nebyla nakonfigurovaná identita zdrojové sítě. Zkontrolujte nastavení účtu v závislosti na cestě, kterou požadavek přišel do služby Azure Cosmos DB.
    • Veřejný internet: Zkontrolujte konfiguraci filtru rozsahu IP adres a přístupu k veřejné síti účtu.
    • Koncový bod služby: Zkontrolujte přístup k veřejné síti účtu a konfigurace filtrů virtuálních sítí.
    • Privátní koncový bod: Zkontrolujte konfiguraci privátního koncového bodu účtu a konfiguraci privátního DNS klienta. Příčinou tohoto problému může být přístup k účtu z privátního koncového bodu, který je nastavený pro jiný účet.

Pokud jste nedávno aktualizovali konfigurace brány firewall účtu, mějte na paměti, že použití změn může trvat až 15 minut.

Klíč oddílu překračující úložiště

V tomto scénáři se běžně zobrazují chyby jako tady:

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

Řešení

Tato chyba znamená, že aktuální návrh dělení a úloha se pokouší uložit více než povolené množství dat pro danou hodnotu klíče oddílu. Počet logických oddílů v kontejneru není omezený, ale velikost dat, která může každý logický oddíl uložit, je omezený. Můžete se obrátit na podporu pro objasnění.

Nedata operace nejsou povolené.

K tomuto scénáři dochází při pokusu o provádění nedata operací pomocí identit Microsoft Entra. V tomto scénáři se běžně zobrazují chyby jako tady:

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.

Řešení

Proveďte operaci prostřednictvím Azure Resource Manageru, webu Azure Portal, Azure CLI nebo Azure PowerShellu. Pokud používáte trigger azure Cosmos DB služby Azure Functions, ujistěte se, že CreateLeaseContainerIfNotExists vlastnost triggeru není nastavená na truehodnotu . Použití identit Microsoft Entra blokuje jakoukoli operaci bez dat, například vytvoření kontejneru zapůjčení.