User- Role - Claim yetkilendirmesi api için yeterli olur. Github da çok fazla örnek vardır. Asp.net core api bunun en sağlam temellerini veriyor zaten.

Mantık şu şekilde : Öncelikle kullanıcıların olacak bunlar User bu kullanıcılar rollerle birlikte oluşturulacak.
Örnek Sistem Admin rolü tüm rollerde kullanıcı oluşturabilecek.
Yönetici sistem admin hariç tüm rollerde kullanıcı oluşturabilecek. gibi altına istediğin kadar sıralayabilirsin.

Peki bunu nasıl yapacaksın claimler ile her methodunun veya tüm class'ının bir claim'i olacak.
Örnek: AdminCreate: Yönetici oluşturma fonksiyonu Claim (AdminCreate)
AdminCreate claim'ini sadece Sistem Admin rolüne ekleyeceksin. Böylelikle sistem admin harici biri bu method'a girmeye çalışırsa api tarafından direk engellenecek isteği alınmayacak.

"Bu api yi kullanan kişilere sınırlama getirmek istiyorum, herkes tc no sunu görmesin veya herkes müşterinin doğum tarihini görmesin şeklinde, bu apiyi 10bin yazılımcı kullandığını düşünün nasıl bir mantık ile yazılması doğru olur. "
Bunu tam nerde yapacağını anlamadım api da methodlara claim bazlı sınırlamalar, claim bazlı outputlar yapabilirsin. Frontend tarafında ise basit mantık if(AdminClaim) adminin görmesi görekenleri göster Else gösterme.

"müdürler görsün, yöneticiler görsün ama onun altındakiler göremesin "
Müdür rolü ve yöneticirolü görsün ama onun altına oluşturduğu roller göremesin demek buda. Yine rol bazlı yetkilendirme.

"Ahmet görsün Mehmet göremesin "

Bu da user claim roller belirli claimlere sahip olduğu gibi kullanıcılara rol harici claim atayabilirsin başka bir tabloda.
Yani Ahmet'e Sistem Admin rolü atama ama o rolün altındaki AdminCreate claim'ini atarsan sadece yönetici oluşturabilir. Ama sistem adminin diğer yaptıklarını yapamaz.

Bu konuda sevdiğim bir eğitim ve github linki:
https://jasonwatmore.com/post/2019/0...th-example-api
github linki vs hepsi içinde var kolay gelsin.

JWT token kullanmanı öneririm girişlerde kişinin role ve claimlerini bu tokende dönebilirsin. Temel olarak böyle farklı bir sorun olursa sorabilirsin.