이 글에서는 Microsoft Entra ID(구 Azure Active Directory)에서 그룹을 만들고 그 그룹에 Directory Readers 역할을 할당하는 방법을 안내합니다. 역할 할당을 사용하면 그룹 소유자가 Azure Synapse Analytics 리소스에 대한 관리 ID를 그룹에 추가할 수 있습니다. 이 방법은 특권 역할 관리자가 각 아이덴티티에 디렉터리 리더 역할을 직접 할당해야 하는 것을 피할 수 있습니다.
이 자습서에서는 Microsoft Entra 그룹을 사용하여 역할 할당을 관리하는 데 도입된 기능을 사용합니다.
참고
Microsoft Entra server principals는 현재 Azure Synapse Analytics에서 미리 보기 상태입니다.
디렉터리 리더 역할 대신, 최소 권한 원칙을 따르도록 하위 수준 Microsoft Graph 권한을 할당할 수 있습니다. 자세한 내용은 Azure Synapse Analytics의 Managed identities in Microsoft Entra를 참조하세요.
Prerequisites
- Microsoft Entra 테넌트입니다. 자세한 내용은 Azure Synapse Analytics로 Microsoft Entra 인증 구성 및 관리하기를 참조하세요.
- Azure Synapse 작업 공간 또는 독립형 전용 SQL 풀.
Azure portal을 사용한 Directory Readers 역할 할당
새 그룹 만들기 및 소유자 및 역할 할당
- 이 초기 설정에는 Privileged Role Administrator 권한이 있는 사용자가 필요합니다.
- 권한이 있는 사용자가 Azure 포털에 로그인하게 하세요.
- Microsoft Entra ID 리소스로 이동합니다. 관리에서 그룹으로 이동합니다. 새 그룹을 선택하여 새 그룹을 만듭니다.
- 그룹 유형으로 보안을 선택하고 나머지 필드를 채웁니다. Microsoft Entra 역할을 그룹에 할당할 수 있음 설정이 예로 전환되어 있는지 확인해 주세요. Microsoft Entra ID 디렉터리 읽기 권한자 역할을 그룹에 할당할 수 있습니다.
- Microsoft Entra 사용자를 그룹의 소유자로 지정하세요. 그룹 소유자는 관리자 역할 없이 일반 Microsoft Entra 사용자일 수 있습니다. 소유자는 Azure Synapse 리소스를 관리하는 사용자여야 합니다.
- Create를 선택합니다.
만든 그룹을 확인해 보세요
참고
그룹 유형이 Security인지 확인하세요. Azure Synapse SQL은 Microsoft 365 그룹을 지원하지 않습니다.
생성한 그룹을 확인하고 관리하려면 Azure 포털의 그룹 창으로 돌아가 그룹 이름을 검색하세요. 그룹을 선택한 후 관리 설정의 소유자와 회원 메뉴에서 더 많은 소유자와 멤버를 추가할 수 있습니다. 그룹에 대한 할당된 역할을 검토할 수도 있습니다.
그룹에 Azure Synapse 관리 ID 추가
다음 단계에서는 더 이상 특권 역할 관리자 사용자가 필요하지 않습니다.
Azure Synapse 리소스를 관리하고 자신이 만든 그룹을 소유한 사용자로 Azure 포털에 로그인하세요.
Azure Synapse workspace의 관리 신원을 찾으세요. 작업 영역의 관리 ID에 대한 자세한 내용은 Azure Synapse Analytics의 관리 ID를 참조하세요.
Microsoft Entra ID에서 Manage 아래에서 Enterprise 애플리케이션을 선택하세요. 관리형 ID를 검색하고 객체 ID를 기록하세요.
Microsoft Entra ID에서 관리(Manage) 아래에서 그룹(Groups)을 선택하세요. 생성한 그룹을 선택한 후 멤버>를 선택하세요. Azure Synapse 관리 ID를 검색하고 추가하세요.
참고
권한이 전파되어 Microsoft Graph에 접근할 수 있게 하는 데 몇 분이 걸릴 수 있습니다.
Remarks
서버 아이덴티티는 논리적 서버 생성 중이나 서버 생성 후에 생성할 수 있습니다. Azure Synapse에서 서버 ID를 만들거나 설정하는 방법에 대한 자세한 내용은 Azure Synapse Analytics의 관리 ID를 참조하세요.
Azure Synapse의 경우 논리 서버에 대한 Microsoft Entra 관리자를 설정할 때 서버 ID에 Directory Readers 역할을 할당할 필요는 없습니다. 하지만 Microsoft Entra 애플리케이션을 대신하여 Azure Synapse에서 Microsoft Entra 개체를 만들 수 있도록 하려면 디렉터리 읽기 권한자 역할(또는 Azure SQL용 Microsoft Entra의 관리 ID에서 설명한 더 낮은 수준의 권한)이 필요합니다. 논리적 서버 아이덴티티에 역할을 할당하지 않으면 Microsoft Entra 사용자 생성이 실패합니다.
PowerShell을 사용하여 디렉터리 읽기 권한자 역할 할당
Important
특 권 역할 관리자 가 이러한 초기 단계를 실행해야 합니다. PowerShell 외에도 Microsoft Entra ID는 Microsoft Graph API를 제공하여 Microsoft Entra ID에서 역할 할당 가능 그룹을 만듭니다.
다음 명령어를 사용하여 Microsoft Graph PowerShell 모듈을 다운로드하세요. 관리자 권한으로 PowerShell을 실행해야 할 수도 있습니다.
Install-Module Microsoft.Graph.Authentication Import-Module Microsoft.Graph.Authentication # To verify that the module is ready to use, run the following command: Get-Module Microsoft.Graph.AuthenticationMicrosoft Entra 테넌트에 연결.
Connect-MgGraph디렉터리 읽기 권한자 역할을 할당하는 보안 그룹을 만듭니다.
-
DirectoryReaderGroup,Directory Reader Group및DirRead를 원하는 대로 변경할 수 있습니다.
$group = New-MgGroup -DisplayName "DirectoryReaderGroup" -Description "Directory Reader Group" -SecurityEnabled:$true -IsAssignableToRole:$true -MailEnabled:$false -MailNickname "DirRead" $group-
디렉토리 리더 역할을 그룹에 할당하세요.
# Displays the Directory Readers role information $roleDefinition = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Directory Readers'" $roleDefinition# Assigns the Directory Readers role to the group $roleAssignment = New-MgRoleManagementDirectoryRoleAssignment -DirectoryScopeId '/' -RoleDefinitionId $roleDefinition.Id -PrincipalId $group.Id $roleAssignment그룹에 사용자 할당.
-
<username>(을)를 그룹을 소유해야 하는 사용자로 바꿉니다. 이 단계를 반복하여 여러 소유자를 추가하세요.
$newGroupOwner = Get-MgUser -UserId "<username>" $newGroupOwner$GrOwner = New-MgGroupOwnerByRef -GroupId $group.Id -OdataId "https://graph.microsoft.com/v1.0/users/$($newGroupOwner.Id)"그룹의 소유자를 확인합니다.
Get-MgGroupOwner -GroupId $group.IdAzure Portal에서 그룹의 소유자를 확인할 수도 있습니다. 생성한 그룹을 확인하려면 생성된 그룹 확인을 참조하세요.
-
서비스 주체를 그룹의 구성원으로 할당
다음 단계에서는 더 이상 특권 역할 관리자 사용자가 필요하지 않습니다.
그룹 소유자이자 Azure Synapse 리소스를 관리하는 입장에서, 다음 명령어를 실행해 Microsoft Entra ID에 연결하세요.
Connect-MgGraph서비스 주체를 생성한 그룹의 구성원으로 지정하세요.
-
<ServerName>(을)를 논리 서버 또는 관리되는 인스턴스의 로그인 서버 이름으로 바꿉니다. 자세한 내용은 'Add Azure SQL service identity to the group' 섹션을 참조하세요.
# Returns the service principal of your Azure SQL resource $managedIdentity = Get-MgServicePrincipal -Filter "displayName eq '<ServerName>'" $managedIdentity# Adds the service principal to the group New-MgGroupMember -GroupId $group.Id -DirectoryObjectId $managedIdentity.Id다음 명령은 그룹에 추가되었음을 나타내는 서비스 주체 개체 ID를 반환합니다.
Get-MgGroupMember -GroupId $group.Id -Filter "Id eq '$($managedIdentity.Id)'"-