İçeriğe atla
Şimdi yükleniyor
AKAşkın KILIÇ
  • Anasayfa
  • Azure & Bulut
    • Microsoft Azure
    • Bulut Altyapı
    • Microsoft 365
  • Yazılım
    • DevOps
    • Geliştirici Araçları
    • Konteyner & K8s
  • AI & Veri
    • Yapay Zeka
    • Veri & Analitik
  • Güvenlik
    • Güvenlik & Kimlik
    • Kurumsal Teknoloji
  • Hakkımda
    • İletişim
×
  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka
  • Başlangıç
  • Güvenlik & Kimlik
  • Cosmos DB’de RBAC Sonrası 403 Hatası: Nedenleri ve Çözümü
Bulut Altyapı Güvenlik & Kimlik 403 Forbidden, Cosmos DB RBAC, Data plane rolü, DefaultAzureCredential, managed identity Aşkın KILIÇ 16/08/2026 0 Yorumlar

Cosmos DB’de RBAC Sonrası 403 Hatası: Nedenleri ve Çözümü

Cosmos DB'de RBAC Sonrası 403 Hatası: Nedenleri ve Çözümü
📑 İçindekiler
  1. 403 hatasını doğru okumak
  2. En sık karşılaşılan beş neden
  3. 1. Control plane rolü atayıp data plane erişimi beklemek
  4. 2. Hiç veri rolü ataması yapılmamış olabilir
  5. 3. Kapsam (scope) çok dar
  6. 4. Atama henüz yayılıyor olabilir
  7. 5. DisableLocalAuth açık ama kod hala anahtar kullanıyor
  8. Hızlı tanı sırası
  9. Güvenli geçiş için doğru sıra
  10. Toparlarken
  11. İlgili İçerikler
  12. Kaynaklar ve İleri Okuma
⏱️ 4 dk okuma📅 16 Ağustos 2026

Azure Cosmos DB hesabınızda yönetilen kimliğe geçtiniz, veri rolünü atadınız, kodu DefaultAzureCredential ile güncellediniz ve anahtar tabanlı erişimi kapattınız. Dağıtımdan sonra her istekten aynı yanıt geliyor: Response status code does not indicate success: 403 (Forbidden). Bu yazıda, RBAC’e geçtikten sonra sık karşılaşılan 403 senaryolarına, hatanın nasıl doğru okunacağına ve uygulamanın en kısa sürede tekrar çalışır hale nasıl getirileceğine bakılıyor.

403 hatasını doğru okumak

RBAC geçişi sırasında alınan 403 çoğu zaman kimlik doğrulamanın başarılı olduğu anlamına gelir. Yani Cosmos DB, isteği yapan kimliği tanımıştır; sorun bu kimliğin ilgili işlemi gerçekleştirmek için yetkilendirilmemiş olmasıdır.

Bu ayrım aramaya nereden başlanacağını belirler. Bozuk bir kimlik bilgisi veya hatalı bir managed identity peşinde koşmak yerine eksik rol ataması, yanlış principal, dar kapsam ve benzeri yetkilendirme sorunlarına odaklanmak gerekir.

Yine de suçu doğrudan RBAC’e yüklemeden önce tam hata mesajını ve substatus kodunu okuyun. Cosmos DB, ağ kısıtlamaları ve diğer yapılandırma sorunları için de 403 döndürebilir; detaylar çoğu zaman yönü gösterir.

En sık karşılaşılan beş neden

1. Control plane rolü atayıp data plane erişimi beklemek

En yaygın hata bu ayrımı gözden kaçırmaktan doğar: control plane ve data plane iki ayrı sistemdir. Uygulamaya Contributor gibi bir Azure yönetim rolü vermek; hesabı yapılandırma, ağ ayarlarını yönetme veya hesap anahtarlarını okuma gibi işlemlere izin verir. Ama veri düzleminde okuma, yazma ya da sorgulama yetkisi vermez. Onun için ayrı bir Azure Cosmos DB veri düzlemi rolü ataması gerekir.

İlk adım, data plane üzerindeki mevcut atamaları listelemek:

az cosmosdb sql role assignment list \
--account-name "$ACCOUNT" \
--resource-group "$RESOURCE_GROUP"

Uygulamanın principalId değeri bu listede yoksa sorun ortaya çıkmıştır: yanlış türde bir rol atanmıştır. Doğrusunu az cosmosdb sql role assignment create komutuyla oluşturabilirsiniz.

2. Hiç veri rolü ataması yapılmamış olabilir

Bazen atama hiç yapılmamış ya da beklediğinizden farklı bir principal’a düşmüştür. Klasik senaryo şu: rolü kendi geliştirici kimliğinize verdiniz ama uygulamanın managed identity’sine hiç atamadınız. Sonuç: yerelde sorunsuz çalışan uygulama, Azure’da ilk çağrıda 403 döner.

Uygulamanın gerçekten hangi principalId ile çalıştığını doğrulayın, sonra bu ID’nin atamasının olup olmadığını kontrol edin:

# Uygulamanın kullandığı managed identity
az webapp identity show \
--name my-app \
--resource-group "$RESOURCE_GROUP" \
--query principalId -o tsv

Bu değeri önceki komutun çıktısıyla karşılaştırın. Listede yoksa çözüm nettir: doğru principal için atamayı oluşturun.

3. Kapsam (scope) çok dar

Her rol ataması bir kapsama bağlıdır. Atamayı tek bir container’a yaptıysanız ve uygulama farklı bir veritabanına ya da container’a erişmeye çalışıyorsa, tam da erişim vermediğiniz yolda 403 alırsınız. Rol vardır ama yeterince geniş değildir.

Atamanın scope değerine bakın. Belirli bir veritabanı veya container’ı işaret ediyorsa ve uygulama daha fazlasına dokunuyorsa kapsamı genişletin. Uygulamayı ilk kez çalıştırıyorsanız hesap kökü (/) düzeyinde başlamak, her şey yeşile döndükten sonra daraltmak pratik bir yaklaşımdır.

4. Atama henüz yayılıyor olabilir

Yeni oluşturulmuş bir rol ataması anında etkinleşmeyebilir. 403 hatası, atamayı oluşturduğunuz veya değiştirdiğiniz hemen ardından başladıysa kod ya da izinlerde değişiklik yapmadan önce yayılma için biraz zaman tanıyın ve tekrar deneyin.

5. DisableLocalAuth açık ama kod hala anahtar kullanıyor

disableLocalAuth: true ayarını yaptığınız anda Cosmos DB anahtar ve bağlantı dizesi kabul etmeyi bırakır; tüm istekler Entra ID üzerinden geçmek zorundadır. Uygulamanızın bir köşesinde, unutulmuş bir arka plan işinde, bir health check’te ya da eski bir yapılandırma değerinde hala anahtarla client oluşturuluyorsa o yol 403 dönerken diğer her şey sorunsuz çalışabilir.

Kodda ve yapılandırmada bağlantı dizelerini ve AccountKey kullanımlarını arayın. Tüm client’lar TokenCredential ile kurulmalıdır:

// disableLocalAuth açıkken bu satır 403 döner
var client = new CosmosClient(connectionString);
// Doğru kullanım
var client = new CosmosClient(
accountEndpoint: "https://my-cosmos-account.documents.azure.com:443/",
tokenCredential: new DefaultAzureCredential());

Hızlı tanı sırası

Bir 403 ile karşılaşıldığında aşağıdaki sırayı takip etmek işleri hızlandırır. Liste kabaca hangi nedenin ne sıklıkta çözüm olduğuna göre düzenlenmiştir:

  1. Yalnızca Azure RBAC değil, gerçek bir veri düzlemi rol atamanız var mı?
  2. Atama, uygulamanın gerçekten kullandığı principal üzerinde mi?
  3. Kapsam, uygulamanın eriştiği tüm veritabanı ve container’ları kapsıyor mu?
  4. Atama çok yeni mi? Bozulmuş olduğuna hükmetmeden önce birkaç dakika bekleyip tekrar deneyin.
  5. Herhangi bir kod yolu hala anahtar veya bağlantı dizesi kullanıyor mu?

Çoğu vakada çözüm ilk iki adımı geçmeden bulunur.

Güvenli geçiş için doğru sıra

403 uçurumundan kaçınmanın en iyi yolu tüm anahtarları aynı anda kapatmamak. Anahtarlar açıkken RBAC’i tam olarak çalışır hale getirin, sonra anahtarları devre dışı bırakın:

  1. Uygulamanın kimliğine veri düzlemi rolünü atayın.
  2. Kodu DefaultAzureCredential kullanacak şekilde güncelleyip dağıtın.
  3. Uygulamanın bu kimlikle veriyi okuyup yazdığını doğrulayın; anahtarlar hala açık olsun.
  4. Ancak bu adımdan sonra disableLocalAuth: true olarak ayarlayın.

Dördüncü adımda bir şey bozulursa, kimlik yolunun saniyeler önce çalıştığını bildiğiniz için tüm rol yapılandırmasını sorgulamak yerine doğrudan beşinci şüpheliye, yani unutulmuş bir anahtar kullanımına odaklanabilirsiniz. Bu sıralama, kafa karıştırıcı bir hatayı belirgin bir hataya dönüştürür.

Toparlarken

Cosmos DB üzerinde şifresiz kimlik doğrulama ilk 403 hatasında ürkütücü görünse de hata modları sınırlıdır ve her biri kısa sürede çözülebilir. Kimlik doğrulama ile yetkilendirmenin farklı sorunlar, control plane ile data plane’in farklı sistemler olduğu içselleştirildiğinde hata bir gizem olmaktan çıkar, kontrol listesine dönüşür.

Pratik bir öneri: hala anahtar veya bağlantı dizesiyle çalışan bir uygulamayı seçip önce üretim dışı bir ortamda DefaultAzureCredential‘a taşıyın. Kimlik yolu kanıtlanana kadar anahtarları açık tutun, sonra disableLocalAuth: true ile kapıyı kapatın.

İlgili İçerikler

  • Azure Cosmos DB'de Partition Key Değiştirme Yolları
  • Azure Cosmos DB Design Patterns: Çalışan Örnekler
  • AI Ajanları Cosmos DB vNext Emülatörüyle Buluşuyor

Kaynaklar ve İleri Okuma

  • devblogs.microsoft.com
  • I Enabled RBAC and Everything Broke. What Did I Do Wrong? – Azure Cosmos DB Blog
  • Which Azure Cosmos DB Role Does My App Need? – Azure Cosmos DB Blog
  • Azure Cosmos DB Blog
  • Cosmos DB Azure RBAC Entegrasyonu: İki Dünya Birleşiyor
  • Azure Storage API’larında Entra ID ve RBAC Dönemi: Pratikte Ne Değişti?
🤖Bu yazı yapay zeka (büyük dil modelleri) ile hazırlanmış, insan editör tarafından incelenmiştir. İçerik üretim sürecimiz.
Aşkın KILIÇ
Aşkın KILIÇYazar

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

İlgili Yazılar

GitHub Copilot Haftalık Sürüm Notları: 10 Ağustos
GitHub Copilot Haftalık Sürüm Notları: 10 Ağustos14 Ağu 2026
langchain-azure-cosmosdb: Tek Veritabanıyla Agentic Uygulamalar
langchain-azure-cosmosdb: Tek Veritabanıyla Agentic Uygulamalar3 May 2026
.NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri
.NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri19 Tem 2026
GPT-5.5 GitHub Copilot'a Geldi: Ne Değişiyor, Ne Kadar Ediyor?
GPT-5.5 GitHub Copilot'a Geldi: Ne Değişiyor, Ne Kadar Ediyor?24 Nis 2026

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için YouTube ve GitHub hesaplarımı takip edin.

YouTube GitHub

Haftalık Bülten

Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

Etiket 403 Forbidden Cosmos DB RBAC Data plane rolü DefaultAzureCredential managed identity
Önceki yazı

Ajan Ekonomisi: Pilotlardan Ölçülebilir Getirilere

İlginizi Çekebilir

Ajan Ekonomisi: Pilotlardan Ölçülebilir Getirilere
Aşkın KILIÇ 0

Ajan Ekonomisi: Pilotlardan Ölçülebilir Getirilere

15/08/2026
OAuth Uygulamalarında Çoklu Redirect URI ve Token Yenileme
Aşkın KILIÇ 0

OAuth Uygulamalarında Çoklu Redirect URI ve Token Yenileme

15/08/2026
GitHub Copilot Haftalık Sürüm Notları: 10 Ağustos
Aşkın KILIÇ 0

GitHub Copilot Haftalık Sürüm Notları: 10 Ağustos

14/08/2026

Yorum gönder Yanıtı iptal et

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • Cosmos DB'de RBAC Sonrası 403 Hatası: Nedenleri ve Çözümü
    16/08/2026 Cosmos DB’de RBAC Sonrası 403 Hatası: Nedenleri ve Çözümü
  • Ajan Ekonomisi: Pilotlardan Ölçülebilir Getirilere
    15/08/2026 Ajan Ekonomisi: Pilotlardan Ölçülebilir Getirilere
  • OAuth Uygulamalarında Çoklu Redirect URI ve Token Yenileme
    15/08/2026 OAuth Uygulamalarında Çoklu Redirect URI ve Token Yenileme
  • Visual Studio 18.9 ile Git Submodules Artık IDE'de
    15/08/2026 Visual Studio 18.9 ile Git Submodules Artık IDE’de
  • KYAML Nedir ve Kubernetes YAML'ı Nasıl Biçimlendirir?
    15/08/2026 KYAML Nedir ve Kubernetes YAML’ı Nasıl Biçimlendirir?
  • Copilot Cloud Agent Metriği: Kullanımı Ölçmek Kolaylaştı
    11/04/2026 Copilot Cloud Agent Metriği: Kullanımı Ölçmek Kolaylaştı
  • Azure MCP Server 2.0: Kendi Sunucunuzda Ajan Otomasyonu
    10/04/2026 Azure MCP Server 2.0: Kendi Sunucunuzda Ajan Otomasyonu
  • GitHub Copilot Cloud Agent İçin Runner Kontrolü: Kurumsal Düzen
    03/04/2026 GitHub Copilot Cloud Agent İçin Runner Kontrolü: Kurumsal Düzen
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • GitHub Code Scanning’de Toplu Düzeltme: PR’lar Hızlandı
    07/04/2026 GitHub Code Scanning’de Toplu Düzeltme: PR’lar Hızlandı
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durduruldu?
  • vcpkg'de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
    06/04/2026 vcpkg’de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
    06/04/2026 Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
  • Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler
    10/04/2026 Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler

SİZİN İÇİN DERLEDİK

Cosmos DB'de RBAC Sonrası 403 Hatası: Nedenleri ve Çözümü
Bulut Altyapı Güvenlik & Kimlik

Cosmos DB’de RBAC Sonrası 403 Hatası: Nedenleri ve Çözümü

16/08/2026 Aşkın KILIÇ
Ajan Ekonomisi: Pilotlardan Ölçülebilir Getirilere
Bulut Altyapı DevOps Yapay Zeka

Ajan Ekonomisi: Pilotlardan Ölçülebilir Getirilere

15/08/2026 Aşkın KILIÇ
OAuth Uygulamalarında Çoklu Redirect URI ve Token Yenileme
Bulut Altyapı Güvenlik & Kimlik

OAuth Uygulamalarında Çoklu Redirect URI ve Token Yenileme

15/08/2026 Aşkın KILIÇ
Visual Studio 18.9 ile Git Submodules Artık IDE'de
DevOps Geliştirici Araçları Microsoft Azure

Visual Studio 18.9 ile Git Submodules Artık IDE’de

15/08/2026 Aşkın KILIÇ
KYAML Nedir ve Kubernetes YAML'ı Nasıl Biçimlendirir?
Geliştirici Araçları Konteyner & Kubernetes

KYAML Nedir ve Kubernetes YAML’ı Nasıl Biçimlendirir?

15/08/2026 Aşkın KILIÇ
Grok 4.6 GitHub Copilot'ta Kullanıma Sunuldu
Geliştirici Araçları Microsoft Azure Yapay Zeka

Grok 4.6 GitHub Copilot’ta Kullanıma Sunuldu

14/08/2026 Aşkın KILIÇ
GitHub Copilot Haftalık Sürüm Notları: 10 Ağustos
Bulut Altyapı Geliştirici Araçları Yapay Zeka

GitHub Copilot Haftalık Sürüm Notları: 10 Ağustos

14/08/2026 Aşkın KILIÇ
Copilot Talimat Dosyası Hijyeni: Neyi Yazmalı, Neyi Atmalı?
Geliştirici Araçları Yapay Zeka

Copilot Talimat Dosyası Hijyeni: Neyi Yazmalı, Neyi Atmalı?

14/08/2026 Aşkın KILIÇ
GitHub Copilot Build Optimizasyonunda Netleşen Sonuçlar
Bulut Altyapı Geliştirici Araçları

GitHub Copilot Build Optimizasyonunda Netleşen Sonuçlar

14/08/2026 Aşkın KILIÇ
Microsoft.Extensions.AI için Routing ve Failover
Bulut Altyapı Yapay Zeka

Microsoft.Extensions.AI için Routing ve Failover

14/08/2026 Aşkın KILIÇ
Gemini 3.7 Flash GitHub Copilot'ta Kullanıma Sunuldu
Geliştirici Araçları Microsoft Azure Yapay Zeka

Gemini 3.7 Flash GitHub Copilot’ta Kullanıma Sunuldu

13/08/2026 Aşkın KILIÇ
GitHub Secure Open Source Fund: 50 Projeden Güvenlik
Bulut Altyapı Geliştirici Araçları Yapay Zeka

GitHub Secure Open Source Fund: 50 Projeden Güvenlik

13/08/2026 Aşkın KILIÇ

Hakkımda

Aşkın KILIÇ

Microsoft Azure Çözüm Uzmanı. Bulut bilişim, yapay zekâ, DevOps ve kurumsal güvenlik üzerine yazılar yazıyorum.

Devamını Oku →

Kategoriler

  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka

Popüler Etiketler

AI ajanları Azure azure app service Azure Cosmos DB Azure Developer CLI Azure DevOps Azure Functions Azure OpenAI azure sdk Azure SQL bulut bilişim C++ CI/CD copilot Copilot CLI DevOps DevSecOps geliştirici verimliliği GitHub GitHub Actions GitHub Copilot güvenlik Kimlik Doğrulama Kubernetes Kurumsal geliştirme kurumsal güvenlik kurumsal yapay zeka maliyet optimizasyonu Microsoft Agent Framework Microsoft Azure Microsoft Foundry MSVC otomasyon performans Pull Request Python RAG SEO uyumlu verimlilik veri yönetimi Visual Studio VS Code yapay zeka yapay zeka ajanları Yazılım geliştirme
  • Gizlilik Politikası
  • Çerez Politikası
  • Kullanım Koşulları
  • Hakkımda
  • İletişim

© 2026 Aşkın KILIÇ | Tüm hakları saklıdır. | Powered By SpiceThemes

Çerez tercihleri Zorunlu çerezler sitenin çalışması için kullanılır. Analitik çerezler yalnız açık izninizden sonra Google Analytics ve Microsoft Clarity için etkinleştirilir. KVKK ve Çerez Politikası
✉

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Ana Sayfa
Kategoriler
💻 Geliştirici Araçları 339 yazı 🏗️ Bulut Altyapı 280 yazı 🤖 Yapay Zeka 240 yazı 🔧 DevOps 198 yazı ☁️ Microsoft Azure 186 yazı 🔒 Güvenlik & Kimlik 161 yazı 🏢 Kurumsal Teknoloji 65 yazı 📊 Veri & Analitik 57 yazı 🐳 Konteyner & Kubernetes 47 yazı 📧 Microsoft 365 21 yazı 📁 Azure 1 yazı
Ara
Popüler
Yapay Zeka Azure Kubernetes DevOps Copilot Docker
Paylaş
WhatsApp
İçindekiler
    ← Ajan Ekonomisi: Pilotlardan Öl...
    →
    📩

    Gitmeden önce!

    Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

    🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

    📬 Haftalık bülten: Teknoloji + AI haberleri
    Beni Takip Et Yeni Azure / AI / DevOps yazılarını GitHub ve RSS üzerinden takip edin.
    GitHub RSS