Azure rol atamalarını anlama.
Rol atamaları, belirli bir Azure kaynağına bir sorumluya (kullanıcı, grup, yönetilen kimlik veya hizmet sorumlusu gibi) erişim vermenizi sağlar. Bu makalede rol atamalarının ayrıntıları açıklanmaktadır.
Rol ataması
Rol ataması oluşturularak Azure kaynaklarına erişim verilir ve rol ataması kaldırılarak erişim iptal edilir.
Rol ataması aşağıdakiler dahil olmak üzere çeşitli bileşenlere sahiptir:
- Sorumlu veya rolün atandığı kişi.
- Atandıkları rol.
- Rolün atandığı kapsam .
- Rol atamasının adı ve rolün neden atandığını açıklamanıza yardımcı olan bir açıklama.
Örneğin, Azure RBAC'yi kullanarak aşağıdaki gibi roller atayabilirsiniz:
- Sally kullanıcısının ContosoStorage kaynak grubundaki contoso123 depolama hesabına sahip erişimi vardır.
- Microsoft Entra ID'deki Bulut Yöneticileri grubundaki herkesin ContosoStorage kaynak grubundaki tüm kaynaklara okuyucu erişimi vardır.
- Bir uygulamayla ilişkili yönetilen kimliğin Contoso aboneliğindeki sanal makineleri yeniden başlatmasına izin verilir.
Aşağıda, Azure PowerShell kullanılarak görüntülendiğinde rol atamasında özelliklerin bir örneği gösterilmektedir:
{
"RoleAssignmentName": "00000000-0000-0000-0000-000000000000",
"RoleAssignmentId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000",
"Scope": "/subscriptions/11111111-1111-1111-1111-111111111111",
"DisplayName": "User Name",
"SignInName": "user@contoso.com",
"RoleDefinitionName": "Contributor",
"RoleDefinitionId": "b24988ac-6180-42a0-ab88-20f7382dd24c",
"ObjectId": "22222222-2222-2222-2222-222222222222",
"ObjectType": "User",
"CanDelegate": false,
"Description": null,
"ConditionVersion": null,
"Condition": null
}
Aşağıda, Azure CLI veya REST API kullanılarak görüntülendiğinde rol atamasında özelliklerin bir örneği gösterilmektedir:
{
"canDelegate": null,
"condition": null,
"conditionVersion": null,
"description": null,
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000",
"name": "00000000-0000-0000-0000-000000000000",
"principalId": "22222222-2222-2222-2222-222222222222",
"principalName": "user@contoso.com",
"principalType": "User",
"roleDefinitionId": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c",
"roleDefinitionName": "Contributor",
"scope": "/subscriptions/11111111-1111-1111-1111-111111111111",
"type": "Microsoft.Authorization/roleAssignments"
}
Aşağıdaki tabloda rol ataması özelliklerinin anlamı açıklanmaktadır.
Özellik | Açıklama |
---|---|
RoleAssignmentName name |
Genel olarak benzersiz bir tanımlayıcı (GUID) olan rol atamasının adı. |
RoleAssignmentId id |
Rol atamasının adını içeren benzersiz kimliği. |
Scope scope |
Rol atamasının kapsamına alınan Azure kaynak tanımlayıcısı. |
RoleDefinitionId roleDefinitionId |
Rolün benzersiz kimliği. |
RoleDefinitionName roleDefinitionName |
Rolün adı. |
ObjectId principalId |
Rolü atanmış sorumlu için Microsoft Entra nesne tanımlayıcısı. |
ObjectType principalType |
Sorumlunun temsil ettiği Microsoft Entra nesnesinin türü. Geçerli değerler , Group ve ServicePrincipal değerlerini içerirUser . |
DisplayName |
Kullanıcıların rol atamaları için kullanıcının görünen adı. |
SignInName principalName |
Kullanıcının benzersiz asıl adı (UPN) veya hizmet sorumlusuyla ilişkili uygulamanın adı. |
Description description |
Rol atamasının açıklaması. |
Condition condition |
Rol tanımı ve özniteliklerinden bir veya daha fazla eylem kullanılarak oluşturulan koşul deyimi. |
ConditionVersion conditionVersion |
Koşul sürüm numarası. Varsayılan olarak 2.0'dır ve desteklenen tek sürümdür. |
CanDelegate canDelegate |
Uygulanmadı. |
Kapsam
Rol ataması oluşturduğunuzda, uygulanacağı kapsamı belirtmeniz gerekir. Kapsam, sorumlunun erişmesine izin verilen kaynağı veya kaynak kümesini temsil eder. Rol atamasını tek bir kaynağa, kaynak grubuna, aboneliğe veya yönetim grubuna kapsam olarak ayarlayabilirsiniz.
İpucu
Gereksinimlerinizi karşılamak için ihtiyacınız olan en küçük kapsamı kullanın.
Örneğin, tek bir depolama hesabına yönetilen kimlik erişimi vermeniz gerekiyorsa, rol atamasını kaynak grubu veya abonelik kapsamında değil depolama hesabı kapsamında oluşturmak iyi bir güvenlik uygulamasıdır.
Kapsam hakkında daha fazla bilgi için bkz . Kapsamı anlama.
Atanacak rol
Rol ataması bir rol tanımıyla ilişkilendirilir. Rol tanımı, sorumlunun rol atamasının kapsamında sahip olması gereken izinleri belirtir.
Yerleşik rol tanımı veya özel rol tanımı atayabilirsiniz. Rol ataması oluşturduğunuzda, bazı araçlar rol tanımı kimliğini kullanmanızı gerektirirken, diğer araçlar rolün adını sağlamanıza olanak tanır.
Rol tanımları hakkında daha fazla bilgi için bkz . Rol tanımlarını anlama.
Asıl
Sorumlular arasında kullanıcılar, güvenlik grupları, yönetilen kimlikler, iş yükü kimlikleri ve hizmet sorumluları bulunur. Sorumlular Microsoft Entra kiracınızda oluşturulur ve yönetilir. Herhangi bir sorumluya rol atayabilirsiniz. Rolü atamak istediğiniz sorumluyu tanımlamak için Microsoft Entra Id nesne kimliğini kullanın.
Azure PowerShell, Azure CLI, Bicep veya başka bir kod olarak altyapı (IaC) teknolojisini kullanarak rol ataması oluşturduğunuzda, asıl türü belirtirsiniz. Asıl türler User, Group ve ServicePrincipal'dır. Doğru sorumlu türünü belirtmek önemlidir. Aksi takdirde, özellikle hizmet sorumluları ve yönetilen kimliklerle çalışırken aralıklı dağıtım hataları alabilirsiniz.
Veri Akışı Adı
Rol atamanın kaynak adı genel olarak benzersiz bir tanımlayıcı (GUID) olmalıdır.
Rol atamasının kapsamı daha dar olsa bile, rol ataması kaynak adları Microsoft Entra kiracısı içinde benzersiz olmalıdır.
İpucu
Azure portalını, Azure PowerShell'i veya Azure CLI'yı kullanarak rol ataması oluşturduğunuzda, oluşturma işlemi rol atamanıza sizin için otomatik olarak benzersiz bir ad verir.
Bicep veya başka bir kod olarak altyapı (IaC) teknolojisini kullanarak rol ataması oluşturursanız rol atamalarınızı nasıl adlandırabileceğinizi dikkatlice planlamanız gerekir. Daha fazla bilgi için bkz . Bicep kullanarak Azure RBAC kaynakları oluşturma.
Kaynak silme davranışı
Microsoft Entra Id'den bir kullanıcı, grup, hizmet sorumlusu veya yönetilen kimliği sildiğinizde, rol atamalarını silmek iyi bir uygulamadır. Bunlar otomatik olarak silinmez. Silinen sorumlu kimliğine başvuran tüm rol atamaları geçersiz hale gelir.
Bir rol atamasının adını başka bir rol ataması için yeniden kullanmayı denerseniz dağıtım başarısız olur. Bu araçları kullanırken rol atama adını açıkça ayarlamanız gerektiğinden, rol atamalarınızı dağıtmak için Bicep veya Azure Resource Manager şablonu (ARM şablonu) kullandığınızda bu sorunun oluşma olasılığı daha yüksektir. Bu davranışa geçici bir çözüm olarak, yeniden oluşturmadan önce eski rol atamasını kaldırmanız veya yeni bir rol ataması dağıtırken benzersiz bir ad kullandığınızdan emin olmanız gerekir.
Açıklama
Rol atamasına metin açıklaması ekleyebilirsiniz. Açıklamalar isteğe bağlı olsa da, bunları rol atamalarınıza eklemek iyi bir uygulamadır. Sorumlunun atanmış role neden ihtiyaç duyduğuna ilişkin kısa bir gerekçe sağlayın. Birisi rol atamalarını denetlediğinde, açıklamalar neden oluşturulduğunu ve hala geçerli olup olmadığını anlamanıza yardımcı olabilir.
Koşullar
Bazı roller, belirli eylemler bağlamındaki özniteliklere göre rol atama koşullarını destekler. Rol atama koşulu, daha ayrıntılı erişim denetimi sağlamak için isteğe bağlı olarak rol atamanıza ekleyebileceğiniz ek bir denetimdir.
Örneğin, bir nesnenin kullanıcının nesneyi okuması için belirli bir etikete sahip olmasını gerektiren bir koşul ekleyebilirsiniz.
Genellikle görsel koşul düzenleyicisi kullanarak koşullar oluşturursunuz, ancak kodda örnek bir koşul şöyle görünür:
((!(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'} AND NOT SubOperationMatches{'Blob.List'})) OR (@resource[Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<$key_case_sensitive$>] StringEqualsIgnoreCase 'Cascade'))
Yukarıdaki koşul, kullanıcıların Project'in blob dizin etiketi anahtarı ve Cascade değeri olan blobları okumasına olanak tanır.
Koşullar hakkında daha fazla bilgi için bkz . Azure öznitelik tabanlı erişim denetimi (Azure ABAC) nedir?
Privileged Identity Management ile Tümleştirme (Önizleme)
Önemli
Privileged Identity Management ile Azure rol ataması tümleştirmesi şu anda ÖNİzLEME aşamasındadır. Beta veya önizleme aşamasında olan ya da başka bir şekilde henüz genel kullanıma sunulmamış olan Azure özelliklerinde geçerli olan yasal koşullar için bkz. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları.
Microsoft Entra Id P2 veya Microsoft Entra Kimlik Yönetimi lisansınız varsa, Microsoft Entra Privileged Identity Management (PIM) rol atama adımlarıyla tümleşiktir. Örneğin, kullanıcılara sınırlı bir süre için roller atayabilirsiniz. Ayrıca, kullanıcıları rol atamaları için uygun hale getirerek, istek onayı gibi rolü kullanmak için etkinleştirmeleri gerekir. Uygun rol atamaları, bir role sınırlı bir süre boyunca tam zamanında erişim sağlar. Etkinleştirme adımlarını gerçekleştiremediğinden uygulamalar, hizmet sorumluları veya yönetilen kimlikler için uygun rol atamaları oluşturamazsınız. Yönetim grubu, abonelik ve kaynak grubu kapsamında uygun rol atamaları oluşturabilirsiniz, ancak kaynak kapsamında oluşturamayın. Bu özellik aşamalı olarak dağıtıldığı için kiracınızda henüz kullanılamayabilir veya arabiriminiz farklı görünebilir.
Kullanabileceğiniz atama türü seçenekleri, PIM ilkenize bağlı olarak farklılık gösterebilir. Örneğin, PIM ilkesi kalıcı atamaların oluşturulup oluşturulamayacağını, zamana bağlı atamalar için en uzun süreyi, rol etkinleştirme gereksinimlerini (onay, çok faktörlü kimlik doğrulaması veya Koşullu Erişim kimlik doğrulaması bağlamı) ve diğer ayarları tanımlar. Daha fazla bilgi için bkz . Privileged Identity Management'ta Azure kaynak rolü ayarlarını yapılandırma.
PIM'i daha iyi anlamak için aşağıdaki terimleri gözden geçirmeniz gerekir.
Terim veya kavram | Rol atama kategorisi | Açıklama |
---|---|---|
uygun | Tür | Kullanıcının rolü kullanmak için bir veya daha fazla eylem gerçekleştirmesini gerektiren rol ataması. Bir kullanıcı rol için uygun hale getirildiyse, bu, ayrıcalıklı görevleri gerçekleştirmesi gerektiğinde rolü etkinleştirebileceği anlamına gelir. Kalıcı rol ataması olan birine verilen erişim ile uygun rol ataması arasındaki fark yoktur. Tek fark, bazı kişilerin bu erişime her zaman ihtiyaç duymamış olmasıdır. |
active | Tür | Bir kullanıcının rolü kullanmak için herhangi bir eylem gerçekleştirmesini gerektirmeyen rol ataması. Etkin olarak atanan kullanıcıların role atanmış ayrıcalıkları vardır. |
etkinleştirme | Kullanıcının uygun olduğu bir rolü kullanmak için bir veya daha fazla eylem gerçekleştirme işlemi. Eylemler arasında çok faktörlü kimlik doğrulaması (MFA) denetimi gerçekleştirme, iş gerekçesi sağlama veya belirlenen onaylayanlardan onay isteme yer alabilir. | |
kalıcı uygun | Süre | Bir kullanıcının her zaman rolü etkinleştirmeye uygun olduğu rol ataması. |
kalıcı etkin | Süre | Bir kullanıcının herhangi bir eylem gerçekleştirmeden rolü her zaman kullanabileceği rol ataması. |
zamana bağlı uygun | Süre | Bir kullanıcının rolü yalnızca başlangıç ve bitiş tarihleri içinde etkinleştirmeye uygun olduğu rol ataması. |
zamana bağlı etkin | Süre | Bir kullanıcının rolü yalnızca başlangıç ve bitiş tarihleri içinde kullanabileceği rol ataması. |
tam zamanında (JIT) erişim | Kullanıcıların ayrıcalıklı görevleri gerçekleştirmek için geçici izinler aldığı ve izinlerin süresi dolduktan sonra kötü amaçlı veya yetkisiz kullanıcıların erişim kazanmasını engelleyen bir model. Erişim yalnızca kullanıcılar ihtiyaç duyduğunda verilir. | |
en az ayrıcalık erişimi ilkesi | Her kullanıcıya yalnızca gerçekleştirme yetkisine sahip oldukları görevleri gerçekleştirmek için gereken en düşük ayrıcalıkların sağlandığı önerilen bir güvenlik uygulaması. Bu uygulama, Genel Yönetici sayısını en aza indirir ve bunun yerine belirli senaryolar için belirli yönetici rollerini kullanır. |
Daha fazla bilgi için bkz . Microsoft Entra Privileged Identity Management nedir?.