데이터베이스 보안 역할 관리
적용 대상: ✅Microsoft Fabric✅Azure Data Explorer
보안 주체는 할당된 보안 역할이 리소스 액세스를 결정하는 역할 기반 액세스 제어 모델을 통해 리소스에 대한 액세스 권한을 부여받습니다.
이 문서에서는 관리 명령을 사용하여 기존 보안 역할을 보고 데이터베이스 수준에서 보안 역할에 보안 역할을 추가하고 삭제하는 방법을 알아봅니다.
사용 권한
이러한 명령을 실행하려면 데이터베이스 관리자 권한이 있어야 합니다.
참고 항목
데이터베이스를 삭제하려면 ARM(기여자 Azure Resource Manager) 이상의 권한이 필요합니다. ARM 권한을 할당하려면 Azure Portal을 사용하여 Azure 역할 할당을 참조하세요.
데이터베이스 수준 보안 역할
다음 표에서는 데이터베이스 수준에서 가능한 보안 역할을 보여 줍니다. 각 역할에 대해 부여된 사용 권한에 대해 설명합니다.
역할 | 사용 권한 |
---|---|
admins |
데이터베이스 및 데이터베이스 엔터티를 보고 수정합니다. |
users |
데이터베이스를 보고 새 데이터베이스 엔터티를 만듭니다. |
viewers |
RestrictedViewAccess가 켜져 있지 않은 데이터베이스의 테이블을 봅니다. |
unrestrictedviewers |
RestrictedViewAccess가 켜져 있는 경우에도 데이터베이스의 테이블을 봅니다. 보안 주체에는 사용 권한도 있어야 admins viewers users 합니다. |
ingestors |
쿼리에 액세스하지 않고 데이터베이스에 데이터를 수집합니다. |
monitors |
스키마, 작업 및 권한과 같은 데이터베이스 메타데이터를 봅니다. |
참고 항목
데이터베이스의 일부 테이블에 대해서만 역할을 할당 viewer
할 수 없습니다. 테이블 하위 집합에 대한 보안 주체 뷰 액세스 권한을 부여하는 방법에 대한 다양한 방법은 테이블 뷰 액세스 관리를 참조하세요.
기존 보안 역할 표시
보안 주체를 추가하거나 제거하기 전에 이 명령을 사용하여 .show
데이터베이스에 이미 설정된 모든 보안 주체 및 역할이 있는 테이블을 볼 수 있습니다.
구문
모든 역할을 표시하려면 다음을 수행합니다.
.show
database
DatabaseName principals
역할을 표시하려면 다음을 수행합니다.
.show
database
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 |
✔️ | 보안 주체에 할당할 역할입니다. 데이터베이스의 경우 역할은 , , users viewers , unrestrictedviewers ingestors 또는 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 , ingestors viewers unrestrictedviewers 또는 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