다음을 통해 공유


보안 역할 개요

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

보안 주체가 작업을 시도할 때 시스템은 권한 부여 검사 수행하여 보안 주체가 작업을 수행할 수 있는 권한을 부여하는 하나 이상의 보안 역할과 연결되어 있는지 확인합니다. 권한 부여 검사 실패하면 작업이 중단됩니다.

이 문서에 나열된 관리 명령을 사용하여 데이터베이스, 테이블, 외부 테이블, 구체화된 뷰 및 함수에 대한 보안 역할과 보안 역할을 관리할 수 있습니다.

참고

, AllDatabasesViewerAllDatabasesMonitorAllDatabasesAdmin세 클러스터 수준 보안 역할은 보안 역할 관리 명령으로 구성할 수 없습니다. Azure Portal 구성하는 방법을 알아보려면 클러스터 권한 관리를 참조하세요.

관리 명령

다음 표에서는 보안 역할을 관리하는 데 사용되는 명령에 대해 설명합니다.

명령 Description
.show 지정된 역할이 있는 보안 주체를 Lists.
.add 역할에 하나 이상의 보안 주체를 추가합니다.
.drop 역할에서 하나 이상의 보안 주체를 제거합니다.
.set 역할을 특정 보안 주체 목록으로 설정하여 이전의 모든 보안 주체를 제거합니다.

보안 역할

다음 표에서는 각 역할에 대해 부여된 액세스 수준을 설명하고 지정된 개체 형식 내에서 역할을 할당할 수 있는지 검사 보여 줍니다.

역할 사용 권한 데이터베이스 테이블 외부 테이블 구체화된 보기 Functions
admins 개체 및 하위 개체를 보고 수정하고 제거합니다. ✔️ ✔️ ✔️ ✔️ ✔️
users 개체를 보고 새 하위 개체를 만듭니다. ✔️
viewers RestrictedViewAccess가 켜져 있지 않은 개체를 봅니다. ✔️
unrestrictedviewers RestrictedViewAccess가 켜져 있는 경우에도 개체를 봅니다. 보안 주체에도 admins, viewers 또는 users 권한이 있어야 합니다. ✔️
ingestors 쿼리에 액세스하지 않고 개체에 데이터를 수집합니다. ✔️ ✔️
monitors 스키마, 작업 및 권한과 같은 메타데이터를 봅니다. ✔️

각 scope 보안 역할에 대한 전체 설명은 Kusto 역할 기반 액세스 제어를 참조하세요.

참고

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

일반적인 시나리오

클러스터에서 역할 표시

클러스터에서 사용자 고유의 역할을 보려면 다음 명령을 실행합니다.

.show cluster principal roles

리소스에 역할 표시

특정 리소스에서 할당된 역할을 검사 관련 데이터베이스 또는 리소스가 포함된 데이터베이스 내에서 다음 명령을 실행합니다.

// For a database:
.show database DatabaseName principal roles

// For a table:
.show table TableName principal roles

// For an external table:
.show external table ExternalTableName principal roles

// For a function:
.show function FunctionName principal roles

// For a materialized view:
.show materialized-view MaterializedViewName principal roles

리소스에 대한 모든 보안 주체의 역할 표시

특정 리소스의 모든 보안 주체에 할당된 역할을 보려면 관련 데이터베이스 또는 리소스가 포함된 데이터베이스 내에서 다음 명령을 실행합니다.

// For a database:
.show database DatabaseName principals

// For a table:
.show table TableName principals

// For an external table:
.show external table ExternalTableName principals

// For a function:
.show function FunctionName principals

// For a materialized view:
.show materialized-view MaterializedViewName principals

where 연산자를 사용하여 특정 보안 주체 또는 역할별로 결과를 필터링합니다.

역할 할당 수정

데이터베이스 및 테이블 수준에서 역할 할당을 수정하는 방법에 대한 자세한 내용은 데이터베이스 보안 역할 관리테이블 보안 역할 관리를 참조하세요.