New-AzRoleAssignment

지정된 범위에서 지정된 보안 주체에 지정된 RBAC 역할을 할당합니다.

cmdlet은 입력 매개 변수에 따라 Microsoft Graph API 아래에서 호출할 수 있습니다.

  • GET /users/{id}
  • GET /servicePrincipals/{id}
  • GET /groups/{id}
  • GET /directoryObjects/{id}

역할 할당 개체를 찾을 수 없거나 현재 계정에 개체 유형을 가져올 수 있는 권한이 부족한 경우 이 cmdlet이 출력으로 Unknown 표시됩니다ObjectType.

Syntax

New-AzRoleAssignment
   -ObjectId <String>
   [-Scope <String>]
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -ObjectId <String>
   -ResourceGroupName <String>
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -ObjectId <String>
   -ResourceGroupName <String>
   -ResourceName <String>
   -ResourceType <String>
   [-ParentResource <String>]
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -ObjectId <String>
   -Scope <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   -RoleDefinitionId <Guid>
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -SignInName <String>
   -ResourceGroupName <String>
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -SignInName <String>
   -ResourceGroupName <String>
   -ResourceName <String>
   -ResourceType <String>
   [-ParentResource <String>]
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -SignInName <String>
   [-Scope <String>]
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -ApplicationId <String>
   -ResourceGroupName <String>
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -ApplicationId <String>
   -ResourceGroupName <String>
   -ResourceName <String>
   -ResourceType <String>
   [-ParentResource <String>]
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -ApplicationId <String>
   [-Scope <String>]
   -RoleDefinitionName <String>
   [-Description <String>]
   [-Condition <String>]
   [-ConditionVersion <String>]
   [-ObjectType <String>]
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzRoleAssignment
   -InputFile <String>
   [-AllowDelegation]
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

New-AzRoleAssignment 명령을 사용하여 액세스 권한을 부여합니다. 적절한 범위에서 적절한 RBAC 역할을 할당하여 액세스 권한을 부여합니다. 전체 구독에 대한 액세스 권한을 부여하려면 구독 범위에서 역할을 할당합니다. 구독 내의 특정 리소스 그룹에 대한 액세스 권한을 부여하려면 리소스 그룹 범위에서 역할을 할당합니다. 과제의 주체를 지정해야 합니다. 사용자를 지정하려면 SignInName 또는 Microsoft Entra ObjectId 매개 변수를 사용합니다. 보안 그룹을 지정하려면 Microsoft Entra ObjectId 매개 변수를 사용합니다. Microsoft Entra 애플리케이션을 지정하려면 ApplicationId 또는 ObjectId 매개 변수를 사용합니다. 할당되는 역할은 RoleDefinitionName 매개 변수를 사용하여 지정해야 합니다. 액세스 권한이 부여되는 범위를 지정할 수 있습니다. 기본값은 선택한 구독으로 설정됩니다. 할당 범위는 다음 매개 변수 조합 중 하나를 사용하여 지정할 수 있습니다. 범위 - /subscriptions/<subscriptionId> b로 시작하는 정규화된 범위입니다. ResourceGroupName - 지정된 리소스 그룹에 대한 액세스 권한을 부여합니다. c. ResourceName, ResourceType, ResourceGroupName 및 (선택 사항) ParentResource - 액세스 권한을 부여할 리소스 그룹 내의 특정 리소스를 지정합니다.

예제

예 1

New-AzRoleAssignment -ResourceGroupName rg1 -SignInName allen.young@live.com -RoleDefinitionName Reader -AllowDelegation

역할 할당을 위임에 사용할 수 있는 리소스 그룹 범위의 사용자에게 읽기 권한자 역할 액세스 권한 부여

예제 2

Get-AzADGroup -SearchString "Christine Koch Team"

          DisplayName                    Type                           Id
          -----------                    ----                           --------
          Christine Koch Team                                           2f9d4375-cbf1-48e8-83c9-2a0be4cb33fb

New-AzRoleAssignment -ObjectId 2f9d4375-cbf1-48e8-83c9-2a0be4cb33fb -RoleDefinitionName Contributor  -ResourceGroupName rg1

보안 그룹에 대한 액세스 권한 부여

예 3

New-AzRoleAssignment -SignInName john.doe@contoso.com -RoleDefinitionName Owner -Scope "/subscriptions/86f81fc3-b00f-48cd-8218-3879f51ff362/resourcegroups/rg1/providers/Microsoft.Web/sites/site1"

리소스에서 사용자에게 액세스 권한 부여(웹 사이트)

예시 4

New-AzRoleAssignment -ObjectId 5ac84765-1c8c-4994-94b2-629461bd191b -RoleDefinitionName "Virtual Machine Contributor" -ResourceName Devices-Engineering-ProjectRND -ResourceType Microsoft.Network/virtualNetworks/subnets -ParentResource virtualNetworks/VNET-EASTUS-01 -ResourceGroupName Network

중첩된 리소스(서브넷)에서 그룹에 대한 액세스 권한 부여

예시 5

$servicePrincipal = New-AzADServicePrincipal -DisplayName "testServiceprincipal"
New-AzRoleAssignment -RoleDefinitionName "Reader" -ApplicationId $servicePrincipal.ApplicationId

서비스 주체에 대한 읽기 권한자 액세스 권한 부여

매개 변수

-AllowDelegation

역할 할당을 만드는 동안 위임 플래그입니다.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationId

ServicePrincipal의 애플리케이션 ID

Type:String
Aliases:SPN, ServicePrincipalName
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Condition

RoleAssignment에 적용할 조건입니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ConditionVersion

조건의 버전입니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

역할 할당에 대한 간략한 설명입니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-InputFile

역할 할당 json에 대한 경로

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ObjectId

사용자, 그룹 또는 서비스 주체의 Microsoft Entra Objectid입니다.

Type:String
Aliases:Id, PrincipalId
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ObjectType

ObjectId와 함께 사용할 수 있습니다. asignee 개체의 형식을 지정합니다.

Type:String
Aliases:PrincipalType
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ParentResource

ResourceName 매개 변수를 사용하여 지정된 리소스의 계층 구조에 있는 부모 리소스입니다. 리소스를 식별하는 상대 URI의 형태로 계층적 범위를 생성하려면 ResourceGroupName, ResourceType 및 ResourceName 매개 변수와 함께만 사용해야 합니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ResourceGroupName

리소스 그룹 이름입니다. 지정된 리소스 그룹에 적용되는 할당을 만듭니다. ResourceName, ResourceType 및 (선택 사항)ParentResource 매개 변수와 함께 사용하는 경우 명령은 리소스를 식별하는 상대 URI 형식으로 계층적 범위를 생성합니다.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ResourceName

리소스 이름. 예를 들어 storageaccountprod입니다. ResourceGroupName, ResourceType 및 (선택적으로) ParentResource 매개 변수와 함께 리소스를 식별하는 상대 URI 형식으로 계층적 범위를 생성하는 데만 사용해야 합니다.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ResourceType

리소스 유형. 예를 들어 Microsoft.Network/virtualNetworks입니다. ResourceGroupName, ResourceName 및 (선택적으로) ParentResource 매개 변수와 함께만 사용하여 리소스를 식별하는 상대 URI 형식으로 계층적 범위를 생성해야 합니다.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-RoleDefinitionId

보안 주체에 할당해야 하는 RBAC 역할의 ID입니다.

Type:Guid
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-RoleDefinitionName

보안 주체(예: Reader, Contributor, Virtual Network 관리istrator 등)에 할당해야 하는 RBAC 역할의 이름입니다.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Scope

역할 할당의 범위입니다. 상대 URI 형식입니다. 예: "/subscriptions/9004a9fd-d58e-48dc-aeb2-4a4aec58606f/resourceGroups/TestRG". 지정하지 않으면 구독 수준에서 역할 할당을 만듭니다. 지정한 경우 "/subscriptions/{id}"로 시작해야 합니다.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SignInName

사용자의 전자 메일 주소 또는 사용자 계정 이름입니다.

Type:String
Aliases:Email, UserPrincipalName
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SkipClientSideScopeValidation

지정된 경우 클라이언트 쪽 범위 유효성 검사를 건너뜁니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

입력

String

Guid

출력

PSRoleAssignment

참고

키워드: azure, azurerm, arm, 리소스, 관리, 관리자, 리소스, 그룹, 템플릿, 배포