Framework/Models/SubscriptionSecurity/SubscriptionRBAC.ps1
Set-StrictMode -Version Latest # Defines data structure for subscription RBAC json class SubscriptionRBAC { [string] $ActiveCentralAccountsVersion; [string] $DeprecatedAccountsVersion; [ActiveRBACAccount[]] $ValidActiveAccounts = @(); [RBACAccount[]] $DeprecatedAccounts = @(); } class RBACAccount { #Fields from JSON [string] $Name = ""; [string] $Description = ""; [bool] $Enabled = $false; [string] $ObjectId = ""; [string] $ObjectType = ""; [RBACAccountType] $Type = [RBACAccountType]::Validate; } class ActiveRBACAccount: RBACAccount { [string[]] $Tags = @(); [string] $RoleDefinitionName = ""; [string] $Scope = ""; } enum RBACAccountType { # AzSDK should not Add/Delete the account Validate # The account can be fully managed (Add/Delete) from AzSDK Provision } |