Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure İzleyici Log Analytics'teki ayrıntılı rol tabanlı erişim denetimi (RBAC), iş ve güvenlik gereksinimlerinizi karşılamak için belirttiğiniz koşullara göre her kullanıcının görüntüleyebileceği veya sorgulayabildiği çalışma alanı verilerini filtrelemenizi sağlar. Bu erişim denetiminin avantajları şunlardır:
- Satır düzeyi erişimi
- Tablo düzeyinde erişim
- Kontrol ve veri düzlemlerinin ayrılması
Log Analytics mimariniz veri ayırma, gizlilik veya uyumluluk için birden çok çalışma alanı içeriyorsa, ayrıntılı RBAC gerekli çalışma alanı sayısını azaltarak topolojinizi basitleştirmenize yardımcı olur.
Giriş videosu
Önkoşullar
| Eylem | İzin gerekiyor |
|---|---|
| Yeni bir özel rol oluşturma |
Microsoft.Authorization/roleDefinitions/write izinleri atanabilir kapsamlarda seçin.
Örneğin, ayrıcalıklı yerleşik rolün sağladığı Kullanıcı Erişimi Yöneticileri. |
| Koşulları ekleme veya güncelleştirme | Log Analytics çalışma alanı için Microsoft.Authorization/roleAssignments/write ve Microsoft.Authorization/roleAssignments/delete izinleri.
Örneğin, ayrıcalıklı yerleşik rol tarafından sağlanan Rol Tabanlı Erişim Kontrol Yöneticisi. |
Ayrıntılı RBAC ne zaman kullanılır?
Ayrıntılı RBAC, aşağıdaki senaryoları gerçekleştirmenize yardımcı olur:
- Veri ayırma - Farklı birimlerin, ekiplerin ve coğrafi konumların verilerini aynı çalışma alanının içinden ayırın ve her kullanıcının yalnızca kendi grubuyla ilgili verilere erişebildiğinden emin olun. Erişim koşulları, güvenlik duvarı, cihaz türü, abonelik kimliği veya diğer tanımlayıcılar gibi özniteliklere göre ayrılmış satır düzeyi erişimi zorlamak için özel günlük alanlarını kullanır.
- Veri gizliliği - Kişisel bilgiler, sağlık kayıtları veya finansal işlemler gibi hassas veya gizli verileri koruyun ve yalnızca yetkili kullanıcılara erişim izni verin.
- Veri uyumluluğu - Sektörünüzün veya bölgenizin mevzuat veya yasal gereksinimlerini karşılamanıza yardımcı olması için ayrıntılı RBAC'yi bir araç olarak kullanın. Veri erişimi ve kullanımı üzerinde uygun ilkeleri ve denetimleri zorunlu kılma.
Ayrıntılı RBAC, verileri görüntüleme veya sorgulama gibi veri erişimini denetler. Veri erişimi, çalışma alanı yönetimi, dönüştürmeler veya veri dışarı aktarma izinlerini ayarlama gibi denetim düzlemi eylemlerini ele almaz.
Ayrıntılı RBAC'yi yapılandırma
Adım adım ayrıntılı RBAC örneğiyle ayrıntılı RBAC'ye atlayın.
Aşağıdaki bölümlerde ayrıntılı RBAC yapılandırmasında yer alan temel kavramlara ve adımlara genel bir bakış sağlanmaktadır.
Rol seçimi
Ayrıntılı RBAC'yi yapılandırmak için yerleşik rolü ( Log Analytics Veri Okuyucusu) kullanın veya belirli, gerekli eylemlerle özel bir rol oluşturun. Ardından koşulları kullanarak seçili rolü atayın. Özel roller hakkında daha fazla bilgi için bkz . Azure özel rolleri.
Gerekli en düşük eylem ve veri eylemi izinleri:
| Özel rol tanımı | İzin | Açıklama |
|---|---|---|
| Kontrol düzlemi (Eylemler) | Microsoft.OperationalInsights/workspaces/query/read |
Log Analytics'te sorgular çalıştırın ve meta verileri görün. Bu izin verilere erişim izni vermez. |
| Veri düzlemi (DataActions) | Microsoft.OperationalInsights/workspaces/tables/data/read |
Verilere erişim ve dataaction rol atama koşulunda seçilendir. Hiçbir koşul ayarlı değilse, bu izin atanan kapsamdaki tüm verilere erişim verir. |
İsteğe bağlı olarak, denetim eylemini ekleyerek Azure portalında Günlükler UI'sine Microsoft.OperationalInsights/workspaces/read erişimini sağlayın. Daha fazla bilgi için bkz. Azure RBAC denetimi ve veri eylemleri.
Uyarı
Azure RBAC gibi ayrıntılı RBAC, ek bir modeldir. Etkili izinleriniz rol atamalarınızın toplamıdır. Ayrıntılı RBAC koşullarının etkili olması için, daha yüksek erişim ayrıcalıklarına sahip rol atamalarını kaldırmanız gerekir.
Örneğin, aynı kapsamda biri bir */read eylemle, diğeri belirli kayıtlarla erişimi sınırlayan koşullarla ayarlanmış iki rol atamanız varsa, sonuçta elde edilen izin kapsamdaki tüm günlüklere erişim veren eylemdir */read . Açıkça reddetme eylemi yoktur, yalnızca atamaları reddeder.
Koşullar ve ifadeler
Normal rol atamalarında olduğu gibi, oluşturulan özel rol de bir kullanıcıya veya gruba atanmalıdır. Aradaki fark, rol ataması sırasında koşulların erişim denetiminde ince ayar yapmak üzere yapılandırılmasıdır.
Ayrıntılı RBAC, her kayıttaki verileri temel alarak tablolarda ve satır düzeyinde bir koşul ayarlamanıza olanak tanır. Kısıtlamaları şu iki stratejiye göre planlayın:
| Erişim denetimi yöntemi | Örnek |
|---|---|
| İzin verilenler dışında verilere erişim yok | Uygulama günlüklerine erişimi kısıtlayın, böylece kullanıcılar yalnızca application id sütununun erişim izni verilmiş bir uygulama olduğu kayıtları görebilir. |
| İzin verilmeyenler dışında tüm verilere erişim | CEO olduğu userPrincipalName sütun kayıtları dışında tüm oturum açma günlüklerine erişime izin verin. |
Bir koşul, rolün ve ifadelerinveri eyleminden oluşur. İfade, biçiminde bir mantıksal deyimdir AttributeOperatorValue.
Değerler, aşağıdaki karakterler için sağlanan destekle sınırlıdır:
- Alfasayısal karakterler
- Özel karakterler:
@,.,-
Log Analytics ayrıntılı RBAC, tablo ve sütun/değer özniteliklerini destekler:
| Öznitelik kaynağı | Görüntü adı | Türü | Açıklama | Öznitelik Adı |
|---|---|---|---|---|
| Kaynak | Tablo Adı | Dize | Yetki vermek/sınırlamak için kullanılan tablo adları. | Microsoft.OperationalInsights/workspaces/tables:"<name>" |
| Kaynak | Sütun değeri (Anahtar, sütun adıdır) | Sözlük (Anahtar-değer) | Sütun adı ve değeri. Anahtar sütun adıdır. Sütundaki veri değeri, değer olarak kabul edilir. | Microsoft.OperationalInsights/workspaces/tables/record:<key> |
Azure portalı kullanılarak yapılandırılanizin verilen yöntem dışında Verilere erişim yok seçeneğinin kullanıldığı ayrıntılı RBAC rol atama koşulunun örnek ekran görüntüsü aşağıda verilmiştir.
Koşulları eşleşecek şekilde ayarladığınız kapsamda ayrıntılı RBAC rol atamalarınızı yapılandırarak karmaşıklığı azaltın. Örneğin, özel rolünüz bir kaynak grubu kapsamında atanmışsa, diğer çalışma alanlarında ifadenizde tablo veya sütun kaynaklarının belirtilmemiş olması, koşulunuzun beklenmedik şekilde uygulanmasına neden olabilir.
Ancak, bir rol ataması için tablo düzeyinde bir koşul ayarlarsanız, aşağıdaki gibi iki rol oluşturulmalıdır:
- Rol 1: Eylem:
Microsoft.OperationalInsights/workspaces/query/readtablonun çalışma alanı için. - Rol 2: DataAction:
Microsoft.OperationalInsights/workspaces/tables/data/readbu çalışma alanı içindeki tablo için. Roldeki koşulu veri eylemiyle tanımlayın.
İki rol oluşturmaktan kaçınmak için, çalışma alanında rolü atayarak ve tablo düzeyini denetlemek için koşulları ayarlayarak en basit yaklaşımı kullanın.
Daha fazla bilgi için bkz. Azure RBAC kapsam düzeyleri.
İfade işleçleri
Ayrıntılı RBAC ifadeleri, öznitelik tabanlı erişim denetimi (ABAC) işleçlerinin bir alt kümesini kullanır.
Tablo adı özniteliği dört işleci destekler. Bu işleçler, bir koşul ayarlarken tablo adlarının değerleriyle eşleşme esnekliği sağlar.
| ABAC işleçleri | Açıklama |
|---|---|
StringEquals |
Büyük/küçük harfe duyarlı eşleştirme. Değerlerin dizeyle tam olarak eşleşmesi gerekir. |
StringNotEquals |
StringEquals'un Olumsuzlanması |
ForAllOfAnyValues:StringEquals |
Mantıksal olarak ile in()eşdeğerdir. Sol taraftaki her değer sağ taraftaki en az bir değerle karşılaştırmayı karşılarsa, ifade true olarak değerlendirilir. |
ForAllOfAllValues:StringNotEquals |
Mantıksal olarak ile !in()eşdeğerdir. Sol taraftaki her değer sağ taraftaki en az bir değerle karşılaştırmayı karşılarsa, ifade false olarak değerlendirilir. |
Log Analytics'te sütun değerleri için tanımlanan ABAC koşulları, bu sütundaki verileri temel alır. Yalnızca dize veri türleri karşılaştırılabilir. Satır düzeyi erişim özniteliği için tüm atamalar yalnızca KQL davranışını temel alır.
Aşağıdaki tabloda desteklenen ABAC ifade işleçleri gösterilmektedir. Eşdeğer Kusto işleçleri netlik için listelenir.
| ABAC operatörü | Kusto eşdeğer operatör | Açıklama |
|---|---|---|
StringEquals / StringEqualsIgnoreCase |
== / =~ |
Büyük/küçük harfe duyarlı (ya da büyük/küçük harfe duyarsız) karşılaştırma. Değerlerin dizeyle tam olarak eşleşmesi gerekir. |
StringNotEquals / StringNotEqualsIgnoreCase |
!= / !~ |
StringEquals (veya StringEqualsIgnoreCase) olumsuzlaması. |
StringLike / StringLikeIgnoreCase |
has_cs / has |
Büyük/küçük harfe duyarlı (ya da büyük/küçük harfe duyarsız) karşılaştırma. İşlecin sağ tarafı (RHS), sol taraftaki (LHS) terimin tamamıdır. |
StringNotLike / StringNotLikeIgnoreCase |
!has_cs / !has |
StringLike (veya StringLikeIgnoreCase) işlecinin olumsuzlanması |
StringStartsWith / StringStartsWithIgnoreCase |
startswith_cs/ startswith |
Büyük/küçük harfe duyarlı (ya da büyük/küçük harfe duyarsız) karşılaştırma. Değer dizeyle başlar. |
StringNotStartsWith / StringNotStartsWithIgnoreCase |
!startswith_cs / !startswith |
StringStartsWith (veya StringStartsWithIgnoreCase) işlecinin olumsuzlanması. |
ForAllOfAnyValues:StringEquals / ForAllOfAnyValues:StringEqualsIgnoreCase ForAllOfAllValues:StringNotEquals / ForAllOfAllValues:StringNotEqualsIgnoreCaseForAnyOfAnyValues:StringLikeIgnoreCase |
In / In~ !in / !in~ has_any |
'ForAllOfAnyValues:<BooleanFunction>' birden çok dizeyi ve sayıyı destekler.
Sol taraftaki her değer sağ taraftaki en az bir değerle karşılaştırmayı karşılarsa, ifade true olarak değerlendirilir. |
ABAC koşulları doğrudan fonksiyonlarda ayarlanmaz. Bir tabloda koşulu ayarlarsanız, bu koşul ona bağlı olan herhangi bir işleve yayılır. İşleçler ve terimler hakkında daha fazla bilgi için bkz . Dize işleçleri.
Tavsiye
ABAC ifadelerinize daha iyi uyacak şekilde verileri zenginleştirmek, harflerin büyük/küçük olmasını değiştirmek ve veri türlerini değiştirmek için dönüşümleri kullanın. Verileriniz uygulamak istediğiniz koşulları desteklemiyorsa, dönüşümler de çözüm olur. Örneğin, IP aralıkları gibi yüksek kardinaliteye sahip verilere koşullar uygulamak için, seçili alt ağlara ait IP'leri alt ağ adına göre gruplandırmak için dönüştürmeleri kullanın.
Daha fazla bilgi için bkz. Azure İzleyici'de veri toplama dönüştürmeleri.
Değerlendirmeler
Log Analytics'te ayrıntılı RBAC kullanılırken dikkat edilmesi gereken birkaç nokta vardır. Aşağıdaki bölümlerde belirli bilgiler sağlanmaktadır.
- Ayrıntılı RBAC genel bulut, Azure Ticari (GCC) ve Azure Çin'de kullanılabilir.
Azure Monitör
- İş Arama ve Özet Kuralları ayrıntılı RBAC desteği için planlanıyor, ancak veri dışa aktarma için planlanmamıştır. Bu deneyimlerin tümü için sorgulanan tablolara tam erişim yoksa, kullanıcı arama işini veya kuralını yapılandıramaz ve bir hata alır.
- Uyarılar: Yalnızca yönetilen kimlik tabanlı kayıt uyarıları desteklenir.
- Application Insights: Yalnızca çalışma alanı tabanlı Application Insights desteklenir.
Microsoft Sentinel
Veriler, özgün tablolardan tehdit avcılığı, yer işaretleri, analiz kuralları ve olaylar kullanılarak çoğaltıldığında, çoğaltılan veriler ABAC koşulları tarafından korunmaz.
Azure ABAC ve RBAC
Normal Azure RBAC ve ABAC sınırlamaları geçerlidir. Örneğin, abonelik başına en fazla rol atamasının eşiği RBAC için bir Azure hizmet sınırıdır. Azure ABAC, koşul başına ifade sayısını ve kb cinsinden koşulun genel boyutunu sınırlar. Daha fazla bilgi için aşağıdaki makalelere bakın:
- Azure RBAC kısıtlamaları
- Azure ABAC sınırları
- Azure rol atama koşulları hakkında SSS
- Azure RBAC sınırlarıyla ilgili sorunları giderme
Denetim ve izleme
Rol atamalarındaki değişiklikler Azure Etkinlik Günlükleri'nde günlüğe kaydedilir. Tablodaki kullanıcı sorguları, sorgunun sütunda geçerli bir ABAC erişim koşuluyla LAQueryLogsyürütülüp yürütülmediğini gösterir.ConditionalDataAccess Log Analytics çalışma alanında tanılama ayarlarını kullanarak günlükleri etkinleştirin. Daha fazla bilgi için bkz. Azure Monitor günlük tanılama ayarları.
Sık Sorulan Sorular
Günlüklerime kaynak bağlamı üzerinden erişiyorum. Koşulum zorunlu kılınabilir mi?
RBAC ve ABAC, kaynak bağlamı sorguları için zorunlu kılınır, ancak bu önkoşulları yerine getirmek için kaynak günlüklerini içeren çalışma alanlarını gerektirir:
- Tüm ilgili çalışma alanlarının Erişim denetim modunuÇalışma alanı izinleri gerektir olarak ayarlayın.
Kaynakları veya çalışma alanı izinlerini kullan olarak ayarlanırsa, kaynağa atanan Azure okuma izni tüm günlüklere erişim sağlar. Çalışma alanı ve ABAC izinleri göz ardı edilir. - ABAC'i tüm ilgili çalışma alanlarında ayarlayın.
Daha fazla bilgi için bkz . Log Analytics çalışma alanlarına erişimi yönetme, erişim modu.
Tablo dışarı aktarıldığında ayrıntılı RBAC koşulları devam eder mi?
Ayrıntılı RBAC koşulları yalnızca sorgularda uygulanır. Örneğin, çalışma alanı verileri dışarı aktarma özelliği kullanılarak başarıyla dışarı aktarılan veriler, hedef tablonun verilerinde ABAC koşullarını korumaz.
Veri sınıflandırmasına göre erişimi nasıl yapılandırabilirsiniz?
Bell-LaPadula stilindeki erişim modelini uygulamak için, "aşağıya doğru okuma" gibi prensiplere bağlı kalmak amacıyla ABAC koşullarını açıkça ayarlamanız gerekir. Örneğin, çok gizli izinlere sahip bir kullanıcının, en üst düzeydeki seviyesinden daha düşük düzeylerdeki verilere erişebilmesi için gizli, gizli ve sınıflandırılmamış gibi daha düşük seviyeler için açıkça belirlenmiş izne sahip olması gerekir.