다음을 통해 공유


데이터베이스 보안 역할 관리

적용 대상: ✅Microsoft Fabric✅Azure Data Explorer

보안 주체는 할당된 보안 역할이 리소스 액세스를 결정하는 역할 기반 액세스 제어 모델을 통해 리소스에 대한 액세스 권한을 부여받습니다.

이 문서에서는 관리 명령을 사용하여 기존 보안 역할을 보고 데이터베이스 수준에서 보안 역할에 보안 역할을 추가하고 삭제하는 방법을 알아봅니다.

사용 권한

이러한 명령을 실행하려면 데이터베이스 관리자 권한이 있어야 합니다.

참고 항목

데이터베이스를 삭제하려면 ARM(기여자 Azure Resource Manager) 이상의 권한이 필요합니다. ARM 권한을 할당하려면 Azure Portal을 사용하여 Azure 역할 할당을 참조하세요.

데이터베이스 수준 보안 역할

다음 표에서는 데이터베이스 수준에서 가능한 보안 역할을 보여 줍니다. 각 역할에 대해 부여된 사용 권한에 대해 설명합니다.

역할 사용 권한
admins 데이터베이스 및 데이터베이스 엔터티를 보고 수정합니다.
users 데이터베이스를 보고 새 데이터베이스 엔터티를 만듭니다.
viewers RestrictedViewAccess켜져 있지 않은 데이터베이스의 테이블을 봅니다.
unrestrictedviewers RestrictedViewAccess가 켜져 있는 경우에도 데이터베이스의 테이블을 봅니다. 보안 주체에는 사용 권한도 있어야 adminsviewersusers 합니다.
ingestors 쿼리에 액세스하지 않고 데이터베이스에 데이터를 수집합니다.
monitors 스키마, 작업 및 권한과 같은 데이터베이스 메타데이터를 봅니다.

참고 항목

데이터베이스의 일부 테이블에 대해서만 역할을 할당 viewer 할 수 없습니다. 테이블 하위 집합에 대한 보안 주체 뷰 액세스 권한을 부여하는 방법에 대한 다양한 방법은 테이블 뷰 액세스 관리를 참조하세요.

기존 보안 역할 표시

보안 주체를 추가하거나 제거하기 전에 이 명령을 사용하여 .show 데이터베이스에 이미 설정된 모든 보안 주체 및 역할이 있는 테이블을 볼 수 있습니다.

구문

모든 역할을 표시하려면 다음을 수행합니다.

.showdatabase DatabaseName principals

역할을 표시하려면 다음을 수행합니다.

.showdatabase DatabaseName principal roles

구문 규칙에 대해 자세히 알아봅니다.

매개 변수

이름 Type 필수 설명
DatabaseName string ✔️ 보안 주체를 나열할 데이터베이스의 이름입니다.

예시

다음 명령은 데이터베이스에 액세스할 수 있는 모든 보안 주체를 나열합니다 Samples .

.show database Samples principals

예제 출력

역할 PrincipalType PrincipalDisplayName PrincipalObjectId PrincipalFQN
데이터베이스 샘플 관리자 Microsoft Entra 사용자 아비 앳킨스 cd709aed-a26c-e3953dec735e aaduser=abbiatkins@fabrikam.com

보안 역할에 보안 연결 추가 및 삭제

이 섹션에서는 보안 역할과 보안 역할의 보안 주체를 추가 및 제거하기 위한 구문, 매개 변수 및 예제를 제공합니다.

구문

Action database DatabaseName 역할 ( 주체 [ , 보안 주체...] ) [skip-results] [ 설명 ]

구문 규칙에 대해 자세히 알아봅니다.

매개 변수

이름 Type 필수 설명
동작 string ✔️ 명령 .add또는 .drop.set.
.add 는 지정된 보안 주체를 .drop 추가하고, 지정된 보안 주체를 제거하고, 지정된 보안 주체를 추가하고, .set 이전 보안 주체를 모두 제거합니다.
DatabaseName string ✔️ 보안 주체를 추가할 데이터베이스의 이름입니다.
역할 string ✔️ 보안 주체에 할당할 역할입니다. 데이터베이스의 경우 역할은 , , usersviewers, unrestrictedviewersingestors또는 monitors.일 수 있습니다admins.
주 서버 string ✔️ 하나 이상의 보안 주체 또는 관리 ID. 관리 ID를 참조하려면 관리 ID 개체 ID 또는 애플리케이션(관리 ID 클라이언트) ID를 사용하여 "앱" 형식을 사용합니다. 이러한 보안 주체를 지정하는 방법에 대한 지침은 Microsoft Entra 보안 주체 및 그룹 참조를 참조하세요.
skip-results string 제공된 경우 명령은 업데이트된 데이터베이스 보안 주체 목록을 반환하지 않습니다.
설명 string 명령을 사용할 때 표시되는 변경 내용을 설명하는 텍스트입니다 .show .
속성 Type 필수 설명
동작 string ✔️ 명령 .add또는 .drop.set.
.add 는 지정된 보안 주체를 .drop 추가하고, 지정된 보안 주체를 제거하고, 지정된 보안 주체를 추가하고, .set 이전 보안 주체를 모두 제거합니다.
DatabaseName string ✔️ 보안 주체를 추가할 데이터베이스의 이름입니다.
역할 string ✔️ 보안 주체에 할당할 역할입니다. 데이터베이스의 경우 , , users, ingestorsviewersunrestrictedviewers또는 monitors.일 수 있습니다.admins
주 서버 string ✔️ 하나 이상의 보안 주체. 이러한 보안 주체를 지정하는 방법에 대한 지침은 Microsoft Entra 보안 주체 및 그룹 참조를 참조하세요.
skip-results string 제공된 경우 명령은 업데이트된 데이터베이스 보안 주체 목록을 반환하지 않습니다.
설명 string 명령을 사용할 때 표시되는 변경 내용을 설명하는 텍스트입니다 .show .

참고 항목

.set 보안 주체 목록 대신 명령을 none 사용하면 지정된 역할의 모든 보안 주체가 제거됩니다.

예제

다음 예제에서는 보안 역할을 추가하고, 보안 역할을 제거하고, 동일한 명령에서 보안 역할을 추가 및 제거하는 방법을 알아보세요.

.add를 사용하여 보안 역할 추가

다음 예제에서는 데이터베이스의 users 역할에 보안 주체를 추가합니다 Samples .

.add database Samples users ('aaduser=imikeoein@fabrikam.com')

다음 예제에서는 데이터베이스의 역할에 애플리케이션을 viewers 추가합니다 Samples .

.add database Samples viewers ('aadapp=4c7e82bd-6adb-46c3-b413-fdd44834c69b;fabrikam.com')

.drop을 사용하여 보안 역할 제거

다음 예제에서는 데이터베이스의 역할에서 그룹의 모든 보안 주체를 admins 제거합니다 Samples .

.drop database Samples admins ('aadGroup=SomeGroupEmail@fabrikam.com')

새 보안 역할 추가 및 .set을 사용하여 이전 역할 제거

다음 예제에서는 기존 viewers 보안 주체를 제거하고 데이터베이스와 같이 viewers 제공된 보안 주체를 Samples 추가합니다.

.set database Samples viewers ('aaduser=imikeoein@fabrikam.com', 'aaduser=abbiatkins@fabrikam.com')

.set을 사용하여 모든 보안 역할 제거

다음 명령은 데이터베이스에 있는 모든 기존 viewers 요소를 Samples 제거합니다.

.set database Samples viewers none