New-AzRoleAssignment
지정된 범위에서 지정된 보안 주체에 지정된 RBAC 역할을 할당합니다.
cmdlet은 입력 매개 변수에 따라 Microsoft Graph API 아래에서 호출할 수 있습니다.
- GET /users/{id}
- GET /servicePrincipals/{id}
- GET /groups/{id}
- GET /directoryObjects/{id}
역할 할당 개체를 찾을 수 없거나 현재 계정에 개체 유형을 가져올 수 있는 권한이 부족한 경우 이 cmdlet이 출력으로 Unknown
표시됩니다ObjectType
.
구문
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/00001111-aaaa-2222-bbbb-3333cccc4444/resourcegroups/rg1/providers/Microsoft.Web/sites/site1"
리소스에서 사용자에게 액세스 권한 부여(웹 사이트)
예시 4
New-AzRoleAssignment -ObjectId 00001111-aaaa-2222-bbbb-3333cccc4444 -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
역할 할당을 만드는 동안 위임 플래그입니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ApplicationId
ServicePrincipal의 애플리케이션 ID
형식: | String |
별칭: | SPN, ServicePrincipalName |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Condition
RoleAssignment에 적용할 조건입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ConditionVersion
조건의 버전입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-DefaultProfile
Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독
형식: | IAzureContextContainer |
별칭: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Description
역할 할당에 대한 간략한 설명입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-InputFile
역할 할당 json에 대한 경로
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ObjectId
사용자, 그룹 또는 서비스 주체의 Microsoft Entra Objectid입니다.
형식: | String |
별칭: | Id, PrincipalId |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ObjectType
ObjectId와 함께 사용할 수 있습니다. asignee 개체의 형식을 지정합니다.
형식: | String |
별칭: | PrincipalType |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ParentResource
ResourceName 매개 변수를 사용하여 지정된 리소스의 계층 구조에 있는 부모 리소스입니다. 리소스를 식별하는 상대 URI의 형태로 계층적 범위를 생성하려면 ResourceGroupName, ResourceType 및 ResourceName 매개 변수와 함께만 사용해야 합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ResourceGroupName
리소스 그룹 이름입니다. 지정된 리소스 그룹에 적용되는 할당을 만듭니다. ResourceName, ResourceType 및 (선택 사항)ParentResource 매개 변수와 함께 사용하는 경우 명령은 리소스를 식별하는 상대 URI 형식으로 계층적 범위를 생성합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ResourceName
리소스 이름. 예를 들어 storageaccountprod입니다. ResourceGroupName, ResourceType 및 (선택적으로) ParentResource 매개 변수와 함께 리소스를 식별하는 상대 URI 형식으로 계층적 범위를 생성하는 데만 사용해야 합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ResourceType
리소스 유형. 예를 들어 Microsoft.Network/virtualNetworks입니다. ResourceGroupName, ResourceName 및 (선택적으로) ParentResource 매개 변수와 함께만 사용하여 리소스를 식별하는 상대 URI 형식으로 계층적 범위를 생성해야 합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-RoleDefinitionId
보안 주체에 할당해야 하는 RBAC 역할의 ID입니다.
형식: | Guid |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-RoleDefinitionName
보안 주체에 할당해야 하는 RBAC 역할의 이름(예: 읽기 권한자, 기여자, Virtual Network 관리자 등)입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Scope
역할 할당의 범위입니다. 상대 URI 형식입니다. 예: "/subscriptions/9004a9fd-d58e-48dc-aeb2-4a4aec58606f/resourceGroups/TestRG". 지정하지 않으면 구독 수준에서 역할 할당을 만듭니다. 지정한 경우 "/subscriptions/{id}"로 시작해야 합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-SignInName
사용자의 전자 메일 주소 또는 사용자 계정 이름입니다.
형식: | String |
별칭: | Email, UserPrincipalName |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-SkipClientSideScopeValidation
지정된 경우 클라이언트 쪽 범위 유효성 검사를 건너뜁니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
출력
참고
키워드: azure, azurerm, arm, 리소스, 관리, 관리자, 리소스, 그룹, 템플릿, 배포
관련 링크
Azure PowerShell