Share via


Azure İzleyici'de roller, izinler ve güvenlik

Bu makalede, Azure'daki bir kullanıcıya hızlı bir şekilde yerleşik izleme rolünün nasıl uygulanacağı veya sınırlı izleme izinlerine ihtiyaç duyan bir kullanıcı için kendi özel rolünüzü nasıl oluşturacağınız gösterilmektedir. Daha sonra makalede Azure İzleyici ile ilgili kaynaklarınız için güvenlik konuları ve bu kaynaklardaki verilere erişimi nasıl sınırlandırabileceğiniz açıklanır.

Yerleşik izleme rolleri

Azure İzleyici’deki yerleşik roller, bir abonelikteki kaynaklara erişimi sınırlamaya yardımcı olurken altyapıyı izleyen personelin ihtiyaç duydukları verileri almasına ve yapılandırmasına da olanak tanır. Azure İzleyici iki hazır rol sunar: İzleme Okuyucusu ve İzleme Katkıda Bulunanı. Azure İzleyici Günlükleri, Log Analytics çalışma alanlarına erişimi yönetme bölümünde açıklandığı gibi Log Analytics çalışma alanında verilere erişimi yönetmek için yerleşik roller de sağlar.

İzleme Okuyucusu

İzleme Okuyucusu rolünün atandığı kişiler abonelikteki tüm izleme verilerini görüntüleyebilir ancak herhangi bir kaynağı değiştiremez veya izleme kaynaklarıyla ilgili ayarları düzenleyemez. Bu rol, bir kuruluştaki destek veya operasyon mühendisleri gibi aşağıdakilere ihtiyacı olan kullanıcılar için uygundur:

  • azure portalında izleme panolarını görüntüleyin.
  • Azure uyarılarında tanımlanan uyarı kurallarını görüntüleyin.
  • Azure İzleyici REST API'sini, PowerShell cmdlet'lerini veya platformlar arası CLI'yı kullanarak Azure İzleyici Ölçümlerini sorgulama.
  • Portalı, Azure İzleyici REST API'sini, PowerShell cmdlet'lerini veya platformlar arası CLI'yı kullanarak Etkinlik günlüğünü sorgular.
  • Bir kaynağın tanılama ayarlarını görüntüleyin.
  • Aboneliğin günlük profilini görüntüleyin.
  • Otomatik ölçeklendirme ayarlarını görüntüleyin.
  • Uyarı etkinliğini ve ayarlarını görüntüleyin.
  • Çalışma alanının kullanım verileri de dahil olmak üzere Log Analytics çalışma alanı verilerini arayın.
  • Log Analytics çalışma alanında tablo şemalarını alma.
  • Log Analytics çalışma alanında günlük sorgularını alma ve yürütme.
  • Uygulama Analizler verilerine erişin.

Not

Bu rol, bir olay hub'ına akışı yapılan veya depolama hesabında depolanan günlük verilerine okuma erişimi vermez. Bu kaynaklara erişimi yapılandırma hakkında bilgi için, bu makalenin devamında yer alan İzleme verileri için güvenlik konuları bölümüne bakın.

İzleme Katkıda Bulunanı

İzleme Katkıda Bulunanı rolünün atandığı kişiler abonelikteki tüm izleme verilerini görüntüleyebilir. Ayrıca izleme ayarlarını oluşturabilir veya değiştirebilirler ancak diğer kaynakları değiştiremezler.

Bu rol, İzleme Okuyucusu rolünün üst kümesidir. Bir kuruluşun izleme ekibinin veya yönetilen hizmet sağlayıcılarının üyeleri için uygundur ve daha önce belirtilen izinlere ek olarak şunları yapmanız gerekir:

  • Portalda izleme panolarını görüntüleyin ve kendi özel izleme panolarını oluşturun.
  • Bir kaynak için tanılama ayarlarını oluşturun ve düzenleyin. 1
  • Azure uyarılarını kullanarak uyarı kuralı etkinliğini ve ayarlarını ayarlayın.
  • Log Analytics çalışma alanı için paylaşılan anahtarları listeleme.
  • Log Analytics çalışma alanında kayıtlı aramalar oluşturun, silin ve yürütebilirsiniz.
  • Log Analytics için çalışma alanı depolama yapılandırmasını oluşturun ve silin.
  • Uygulama Analizler için web testleri ve bileşenleri oluşturun. Bkz. Uygulama Analizler Kaynaklar, roller ve erişim denetimi.

1 Tanılama ayarı oluşturmak veya düzenlemek için, kullanıcılara hedef kaynakta (depolama hesabı veya olay hub'ı ad alanı) Ayrıca ListKeys izni de verilmelidir.

Not

Bu rol, bir olay hub'ına akışı yapılan veya depolama hesabında depolanan günlük verilerine okuma erişimi vermez. Bu kaynaklara erişimi yapılandırma hakkında bilgi için, bu makalenin devamında yer alan İzleme verileri için güvenlik konuları bölümüne bakın.

İzinleri ve Azure özel rollerini izleme

Yukarıdaki yerleşik roller ekibinizin tam gereksinimlerini karşılamıyorsa daha ayrıntılı izinlere sahip bir Azure özel rolü oluşturabilirsiniz. Azure İzleyici için yaygın Azure rol tabanlı erişim denetimi (RBAC) işlemleri burada listelenmiştir.

Operasyon Açıklama
Microsoft. Analizler/ActionGroups/[Okuma, Yazma, Silme] Eylem gruplarını okuma, yazma veya silme.
Microsoft. Analizler/ActivityLogAlerts/[Okuma, Yazma, Silme] Etkinlik günlüğü uyarılarını okuma, yazma veya silme.
Microsoft. Analizler/AlertRules/[Okuma, Yazma, Silme] Uyarı kurallarını okuma, yazma veya silme (klasik uyarılardan).
Microsoft. Analizler/AlertRules/Incidents/Read Uyarı kuralları için olayları (tetiklenen uyarı kuralının geçmişi) listeleyin. Bu yalnızca portal için geçerlidir.
Microsoft. Analizler/Otomatik Ölçeklendirme Ayarlar/[Okuma, Yazma, Silme] Otomatik ölçeklendirme ayarlarını okuyun, yazın veya silin.
Microsoft. Analizler/Tanılama Ayarlar/[Okuma, Yazma, Silme] Tanılama ayarlarını okuma, yazma veya silme.
Microsoft. Analizler/EventCategories/Read Etkinlik günlüğünde mümkün olan tüm kategorileri numaralandırın. Azure portalı tarafından kullanılır.
Microsoft. Analizler/eventtypes/digestevents/Read Bu izin, portal aracılığıyla Etkinlik günlüğüne erişmesi gereken kullanıcılar için gereklidir.
Microsoft. Analizler/eventtypes/values/Read Abonelikteki Etkinlik günlüğü olaylarını (yönetim olayları) listeleme. Bu izin hem program aracılığıyla hem de etkinlik günlüğüne portal erişimi için geçerlidir.
Microsoft. Analizler/ExtendedDiagnostic Ayarlar/[Okuma, Yazma, Silme] Ağ akışı günlükleri için tanılama ayarlarını okuyun, yazın veya silin.
Microsoft. Analizler/LogDefinitions/Read Bu izin, portal aracılığıyla Etkinlik günlüğüne erişmesi gereken kullanıcılar için gereklidir.
Microsoft. Analizler/LogProfiles/[Okuma, Yazma, Silme] Günlük profillerini okuma, yazma veya silme (Etkinlik günlüğünü bir olay hub'ına veya depolama hesabına akışla aktarma).
Microsoft. Analizler/MetricAlerts/[Okuma, Yazma, Silme] Ölçüm uyarı kurallarını okuma, yazma veya silme.
Microsoft. Analizler/MetricDefinitions/Read Ölçüm tanımlarını okuyun (bir kaynak için kullanılabilir ölçüm türlerinin listesi).
Microsoft. Analizler/Ölçümler/Okuma Bir kaynağın ölçümlerini okuyun.
Microsoft.Insights/Register/Action Azure İzleyici kaynak sağlayıcısını kaydedin.
Microsoft. Analizler/ScheduledQueryRules/[Okuma, Yazma, Silme] Azure İzleyici'de günlük araması uyarılarını okuyun, yazın veya silin.

Not

Bir kaynağın uyarılarına, tanılama ayarlarına ve ölçümlerine erişim için kullanıcının kaynak türüne ve kapsamına okuma erişimi olması gerekir. Depolama hesabına veri gönderen veya olay hub'larına akış gönderen bir tanılama ayarı oluşturmak, kullanıcının hedef kaynak üzerinde ListKeys iznine de sahip olmasını gerektirir.

Örneğin, bir Etkinlik Günlüğü Okuyucusu için aşağıdakilerle bir Azure özel rolü oluşturmak için yukarıdaki tabloyu kullanabilirsiniz:

$role = Get-AzRoleDefinition "Reader"
$role.Id = $null
$role.Name = "Activity Log Reader"
$role.Description = "Can view activity logs."
$role.Actions.Clear()
$role.Actions.Add("Microsoft.Insights/eventtypes/*")
$role.AssignableScopes.Clear()
$role.AssignableScopes.Add("/subscriptions/mySubscription")
New-AzRoleDefinition -Role $role 

İzleme verileri için güvenlik konuları

Azure İzleyici'deki veriler bir depolama hesabında gönderilebilir veya her ikisi de genel amaçlı Azure kaynakları olan bir olay hub'ına akışla aktarılabilir. Bunlar genel amaçlı kaynaklar olduğundan, bunları oluşturma, silme ve bunlara erişme, yönetici için ayrılmış ayrıcalıklı bir işlemdir. Bu veriler IP adresleri veya kullanıcı adları gibi hassas bilgiler içerebileceğinden, kötüye kullanımı önlemek için izlemeyle ilgili kaynakları izlemek için aşağıdaki uygulamaları kullanın:

  • Verileri izlemek için tek bir ayrılmış depolama hesabı kullanın. İzleme verilerini birden çok depolama hesabına ayırmanız gerekiyorsa, izleme ve izleme olmayan veriler arasında hiçbir zaman depolama hesabı kullanımını paylaşmayın. Bu şekilde kullanımın paylaşılması, yalnızca izleme verilerine erişmesi gereken kuruluşlara yanlışlıkla izleme olmayan verilere erişim verebilir. Örneğin, güvenlik bilgileri ve olay yönetimi için üçüncü taraf bir kuruluşun yalnızca izleme verilerine erişmesi gerekir.
  • Önceki noktada açıklanan nedenle tüm tanılama ayarlarında tek, ayrılmış bir hizmet veri yolu veya olay hub'ı ad alanı kullanın.
  • İzlemeyle ilgili depolama hesaplarına veya olay hub'larına erişimi ayrı bir kaynak grubunda tutarak sınırlayın. Erişimi yalnızca bu kaynak grubuyla sınırlandırmak için izleme rollerinizin kapsamını kullanın.
  • Kullanıcının yalnızca izleme verilerine erişmesi gerektiğinde abonelik kapsamında depolama hesapları veya olay hub'ları için ListKeys iznini asla verme. Bunun yerine, kullanıcıya bir kaynak veya kaynak grubu kapsamında (ayrılmış bir izleme kaynak grubunuz varsa) bu izinleri verin.

Bir kullanıcı veya uygulamanın depolama hesabındaki izleme verilerine erişmesi gerektiğinde, blob depolamaya hizmet düzeyinde salt okunur erişime sahip izleme verilerini içeren depolama hesabında paylaşılan erişim imzası (SAS) oluşturun. PowerShell'de hesap SAS'i aşağıdaki kod gibi görünebilir:

$context = New-AzStorageContext -ConnectionString "[connection string for your monitoring Storage Account]"
$token = New-AzStorageAccountSASToken -ResourceType Service -Service Blob -Permission "rl" -Context $context

Ardından belirteci bu depolama hesabından okuması gereken varlığa verebilirsiniz. Varlık, bu depolama hesabındaki tüm blobları listeleyebilir ve okuyabilir.

Alternatif olarak, bu izni Azure RBAC ile denetlemeniz gerekiyorsa söz konusu varlığa Microsoft.Storage/storageAccounts/listkeys/action söz konusu depolama hesabı üzerinde izin vekleyebilirsiniz. Bu izin, bir depolama hesabına veri göndermek için tanılama ayarı ayarlaması gereken kullanıcılar için gereklidir. Örneğin, yalnızca bir depolama hesabından okuması gereken bir kullanıcı veya uygulama için aşağıdaki Azure özel rolünü oluşturabilirsiniz:

$role = Get-AzRoleDefinition "Reader"
$role.Id = $null
$role.Name = "Monitoring Storage Account Reader"
$role.Description = "Can get the storage account keys for a monitoring storage account."
$role.Actions.Clear()
$role.Actions.Add("Microsoft.Storage/storageAccounts/listkeys/action")
$role.Actions.Add("Microsoft.Storage/storageAccounts/Read")
$role.AssignableScopes.Clear()
$role.AssignableScopes.Add("/subscriptions/mySubscription/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myMonitoringStorageAccount")
New-AzRoleDefinition -Role $role 

Uyarı

ListKeys izni, kullanıcının birincil ve ikincil depolama hesabı anahtarlarını listelemesini sağlar. Bu anahtarlar kullanıcıya söz konusu depolama hesabındaki tüm imzalı hizmetler (blob, kuyruk, tablo, dosya) genelinde tüm imzalı izinleri (okuma, yazma, blob oluşturma ve blobları silme gibi) verir. Mümkün olduğunda bir hesap SAS'i kullanmanızı öneririz.

Olay hub'larıyla benzer bir desen izleyebilirsiniz, ancak önce dinlemek için ayrılmış bir yetkilendirme kuralı oluşturmanız gerekir. Yalnızca izlemeyle ilgili olay hub'larını dinlemesi gereken bir uygulamaya erişim vermek istiyorsanız şu adımları izleyin:

  1. Portalda, yalnızca dinleme talepleri içeren akış izleme verileri için oluşturulan olay hub'larında bir paylaşılan erişim ilkesi oluşturun. Örneğin, buna "monitoringReadOnly" diyebilirsiniz. Mümkünse, bu anahtarı doğrudan tüketiciye verin ve sonraki adımı atlayın.

  2. Tüketicinin anahtarı geçici olarak alması gerekiyorsa, kullanıcıya bu olay hub'ı için ListKeys eylemini verin. Bu adım, olay hub'larına akış yapmak için tanılama ayarı veya günlük profili ayarlaması gereken kullanıcılar için de gereklidir. Örneğin, bir Azure RBAC kuralı oluşturabilirsiniz:

    $role = Get-AzRoleDefinition "Reader"
    $role.Id = $null
    $role.Name = "Monitoring Event Hub Listener"
    $role.Description = "Can get the key to listen to an event hub streaming monitoring data."
    $role.Actions.Clear()
    $role.Actions.Add("Microsoft.EventHub/namespaces/authorizationrules/listkeys/action")
    $role.Actions.Add("Microsoft.EventHub/namespaces/Read")
    $role.AssignableScopes.Clear()
    $role.AssignableScopes.Add("/subscriptions/mySubscription/resourceGroups/myResourceGroup/providers/Microsoft.ServiceBus/namespaces/mySBNameSpace")
    New-AzRoleDefinition -Role $role 
    

Sonraki adımlar