Set-AzRoleDefinition

Azure RBAC'deki özel rolü değiştirir. Değiştirilen rol tanımını JSON dosyası veya PSRoleDefinition olarak sağlayın. İlk olarak, değiştirmek istediğiniz özel rolü almak için Get-AzRoleDefinition komutunu kullanın. Ardından, değiştirmek istediğiniz özellikleri değiştirin. Son olarak, bu komutu kullanarak rol tanımını kaydedin.

Syntax

InputFileParameterSet

Set-AzRoleDefinition
    -InputFile <String>
    [-SkipClientSideScopeValidation]
    [-DefaultProfile <IAzureContextContainer>]
    [<CommonParameters>]

RoleDefinitionParameterSet

Set-AzRoleDefinition
    -Role <PSRoleDefinition>
    [-SkipClientSideScopeValidation]
    [-DefaultProfile <IAzureContextContainer>]
    [<CommonParameters>]

Description

Set-AzRoleDefinition cmdlet'i Azure Role-Based Access Control'da var olan bir özel rolü güncelleştirir. Güncelleştirilmiş rol tanımını komutuna JSON dosyası veya PSRoleDefinition nesnesi olarak giriş olarak sağlayın.

Güncelleştirilmiş özel rolün rol tanımı AŞAĞıDAKILERI içermelidir:

  • Kimlik: Güncelleştirilecek rol tanımının benzersiz tanımlayıcısı
  • Ad: Özel rolün adı
  • Açıklama: rolün kısa bir açıklaması
  • İzinler: Eylemler ve/veya DataActions içeren izin nesneleri dizisi
  • AssignableScopes: rolün atanabileceği kapsamlar

permissions dizisindeki her izin nesnesi Actions, NotActions, DataActions, NotDataActions ve isteğe bağlı olarak Attribute-Based Access Control (ABAC) koşulları için Condition ve ConditionVersion içerebilir.

Important

JSON'un PSRoleDefinition-InputFile ve şekli değişti. Hem (PSRoleDefinition) hem -Role de -InputFile (JSON) artık düzleştirilmiş üst düzey Permissions, , ActionsNotActionsve DataActions özellikleri yerine bir NotDataActions izin nesneleri dizisi kullanıyor. içine aktaran Get-AzRoleDefinitionSet-AzRoleDefinition -Role betikler, doğrudan rol nesnesi yerine eylemleri ve koşulları $role.Permissions[n] okumalı ve değiştirmelidir. ile -InputFile kullanılan JSON dosyalarının aynı şekilde bir Permissions dizi altında izinleri iç içe yerleştirmesi gerekir.

Note

Azure RBAC API'si şu anda özel rolleri güncelleştirirken İzinler dizisinde yalnızca tek bir öğeyi destekler. Veri modeli birden çok izin girdisini desteklese de güncelleştirme işlemlerinin tam olarak bir izin nesnesi kullanması gerekir.

Örnekler

Örnek 1: PSRoleDefinitionObject kullanarak güncelleştirme

$roleDef = Get-AzRoleDefinition "Contoso On-Call"
$roleDef.Permissions[0].Actions.Add("Microsoft.ClassicCompute/virtualmachines/start/action")
$roleDef.Description = "Can monitor all resources and start and restart virtual machines"
$roleDef.AssignableScopes = @("/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
Set-AzRoleDefinition -Role $roleDef

Örnek 2: JSON dosyasını kullanarak güncelleştirme

Set-AzRoleDefinition -InputFile C:\Temp\roleDefinition.json

Bir JSON dosyasından özel rol tanımını güncelleştirir. JSON dosyası rolün Id özelliğini içermelidir.

Parametreler

-DefaultProfile

Azure ile iletişim için kullanılan kimlik bilgileri, hesap, kiracı ve abonelik

Parametre özellikleri

Tür:IAzureContextContainer
Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:AzContext, AzureRmContext, AzureCredential

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-InputFile

Güncelleştirilecek tek bir json rol tanımını içeren dosya adı. Yalnızca JSON'da güncelleştirilecek özellikleri ekleyin. Kimlik özelliği Gerekli'dir.

Parametre özellikleri

Tür:String
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

InputFileParameterSet
Position:Named
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Role

Güncelleştirilecek rol tanımı nesnesi

Parametre özellikleri

Tür:PSRoleDefinition
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

RoleDefinitionParameterSet
Position:Named
Zorunlu:True
İşlem hattından gelen değer:True
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-SkipClientSideScopeValidation

Belirtilirse, istemci tarafı kapsam doğrulamayı atlayın.

Parametre özellikleri

Tür:SwitchParameter
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

CommonParameters

Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.

Girişler

PSRoleDefinition

Çıkışlar

PSRoleDefinition

Notlar

Anahtar sözcükler: azure, azurerm, arm, kaynak, yönetim, yönetici, kaynak, grup, şablon, dağıtım