Mendiagnosis dan memecahkan masalah pengecualian terlarang Azure Cosmos DB

BERLAKU UNTUK: NoSQL

Kode status HTTP 403 mewakili permintaan yang dilarang untuk diselesaikan.

Permintaan pemblokiran firewall

Permintaan sarana data dapat datang ke Azure Cosmos DB melalui tiga jalur berikut.

  • Internet publik (IPv4)
  • Titik akhir layanan
  • Titik akhir privat

Ketika permintaan sarana data diblokir dengan 403 Terlarang, pesan kesalahan akan menentukan melalui mana dari tiga jalur di atas permintaan datang ke 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.

Solusi

Pahami melalui jalur mana adalah permintaan yang diharapkan untuk datang ke Azure Cosmos DB.

  • Jika pesan kesalahan menunjukkan bahwa permintaan tidak datang ke Azure Cosmos DB melalui jalur yang diharapkan, kemungkinan masalahnya adalah dengan penyiapan sisi klien. Periksa kembali penyiapan sisi klien Anda dengan dokumentasi berikut.
  • Jika permintaan datang ke Azure Cosmos DB melalui jalur yang diharapkan, permintaan diblokir karena identitas jaringan sumber tidak dikonfigurasi untuk diizinkan untuk akun tersebut. Periksa pengaturan akun tergantung pada jalur permintaan datang ke Azure Cosmos DB.
    • Internet publik: periksa akses jaringan publik akun dan konfigurasi filter rentang IP.
    • Titik akhir layanan: periksa akses jaringan publik akun dan konfigurasi filter VNET.
    • Titik akhir privat: periksa konfigurasi titik akhir privat akun dan konfigurasi DNS privat klien. Ini mungkin karena mengakses akun dari titik akhir privat yang disiapkan untuk akun yang berbeda.

Jika Anda baru saja memperbarui konfigurasi firewall akun, perhatikan bahwa perubahan dapat memerlukan waktu hingga 15 menit untuk diterapkan.

Kunci partisi yang melebihi penyimpanan

Pada skenario ini, sering terjadi kesalahan seperti di bawah ini:

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

Solusi

Kesalahan ini berarti bahwa desain partisi dan beban kerja Anda saat ini mencoba menyimpan lebih dari jumlah data yang diizinkan untuk nilai kunci partisi tertentu. Tidak ada batasan jumlah partisi logis dalam kontainer Anda tetapi ukuran data yang dapat disimpan setiap partisi logis terbatas. Anda dapat menghubungi untuk mendukung klarifikasi.

Operasi non-data tidak diperbolehkan

Skenario ini terjadi saat mencoba melakukan operasi non-data menggunakan identitas Microsoft Entra. Pada skenario ini, sering terjadi kesalahan seperti di bawah ini:

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.

Solusi

Lakukan operasi melalui Azure Resource Manager, Azure portal, Azure CLI, atau Azure PowerShell. Jika Anda menggunakan Pemicu Azure Functions Azure Cosmos DB, pastikan CreateLeaseContainerIfNotExists properti pemicu tidak diatur ke true. Menggunakan identitas Microsoft Entra memblokir operasi non-data, seperti membuat kontainer sewa.

Langkah berikutnya