관계형 데이터베이스의 배경을 사용하여 Analysis Services 데이터베이스 관리에 접근하는 경우 가장 먼저 이해해야 할 사항은 데이터 액세스 측면에서 데이터베이스가 Analysis Services의 기본 보안 개체가 아니라는 것입니다.
Analysis Services의 기본 쿼리 구조는 특정 개체에 대해 설정된 사용자 권한이 있는 큐브(또는 테이블 형식 모델)입니다. 데이터베이스 자체에서 데이터베이스 로그인 및 사용자 권한(종종 db_datareader)이 설정되는 관계형 데이터베이스 엔진과 대조되는 Analysis Services 데이터베이스는 주로 데이터 모델의 기본 쿼리 개체에 대한 컨테이너입니다. 큐브 또는 테이블 형식 모델에 대한 데이터 액세스를 사용하도록 설정하는 것이 즉각적인 목표인 경우 지금은 데이터베이스 권한을 무시하고 큐브 또는 모델 권한 부여(Analysis Services) 항목으로 바로 이동하면 됩니다.
Analysis Services의 데이터베이스 권한은 관리 기능을 사용하도록 설정합니다. 전체 제어 데이터베이스 사용 권한의 경우와 마찬가지로 광범위하게 또는 처리 작업을 위임하는 경우 보다 세부적인 특성이 있습니다. Analysis Services 데이터베이스에 대한 사용 권한 수준은 다음 그림과 아래에 설명된 역할 만들기 대화 상자의 일반 창에 지정됩니다.
Analysis Services에는 로그인이 없습니다. 멤버 자격 창에서 역할을 만들고 Windows 계정을 할당하기만 하면 됩니다. 관리자를 포함한 모든 사용자는 Windows 계정을 사용하여 Analysis Services에 연결합니다.
데이터베이스 수준에는 세 가지 유형의 사용 권한이 지정되어 있습니다.
모든 권한(관리자) - 모든 권한은 데이터베이스 내의 개체를 쿼리하거나 처리하고 역할 보안을 관리하는 기능과 같이 Analysis Services 데이터베이스에 대한 광범위한 권한을 전달하는 모든 권한을 포함합니다. 모든 권한은 데이터베이스 관리자 상태와 동의어입니다. 선택하면 Full ControlProcess Database 권한과 Read Definition 사용 권한도 선택되며 제거할 수 없습니다.
비고
서버 관리자(서버 관리자 역할의 멤버)도 서버의 모든 데이터베이스에 대한 암시적 모든 권한을 가집니다.
Process Database • 이 권한은 데이터베이스 수준에서 처리를 위임하는 데 사용됩니다. 관리자는 다른 사용자 또는 서비스에서 데이터베이스의 모든 개체에 대한 처리 작업을 호출할 수 있는 역할을 만들어 이 작업을 오프로드할 수 있습니다. 또는 특정 개체에서 처리를 사용하도록 설정하는 역할을 만들 수도 있습니다. 자세한 내용은 프로세스 권한 부여(Analysis Services) 를 참조하세요.
Read Definition - 이 권한은 연결된 데이터를 볼 수 있는 기능을 뺀 개체 메타데이터를 읽을 수 있는 기능을 부여합니다. 일반적으로 이 권한은 전용 처리를 위해 만든 역할에 사용되며 SQL Server Data Tools 또는 SQL Server Management Studio와 같은 도구를 사용하여 데이터베이스를 대화형으로 처리하는 기능을 추가합니다.
Read Definition가 없으면, Process Database 권한은 스크립트로 작성된 시나리오에서만 효과적입니다. 처리를 자동화하려는 경우 SSIS 또는 다른 스케줄러를 통해 Process Database는 포함하고 Read Definition은 포함하지 않는 역할을 만들고 싶을 것입니다. 그렇지 않은 경우 사용자 인터페이스에서 데이터 모델을 시각화하는 SQL Server 도구를 통해 무인 및 대화형 처리를 모두 지원하기 위해 동일한 역할에서 두 속성을 함께 결합하는 것이 좋습니다.
전체 제어 권한(관리자)
Analysis Services에서 데이터베이스 관리자는 모든 권한(관리자) 권한을 포함하는 역할에 할당된 모든 Windows 사용자 ID입니다. 데이터베이스 관리자는 다음을 포함하여 데이터베이스 내의 모든 작업을 수행할 수 있습니다.
프로세스 개체
큐브, 차원, 측정값 그룹, 큐브 뷰 및 데이터 마이닝 모델을 포함하여 데이터베이스의 모든 개체에 대한 데이터 및 메타데이터를 읽습니다.
모든 권한이 있는 역할에 사용자를 추가하는 것을 포함하여 사용자 또는 권한을 추가하여 데이터베이스 역할을 만들거나 수정합니다.
데이터베이스 역할 또는 역할 멤버 자격 삭제
데이터베이스에 대한 어셈블리(또는 저장 프로시저)를 등록합니다.
데이터베이스 관리자는 서버에서 데이터베이스를 추가 또는 삭제하거나 동일한 서버의 다른 데이터베이스에 대한 관리자 권한을 부여할 수 없습니다. 해당 권한은 서버 관리자에게만 속합니다. 이 권한 수준에 대한 자세한 내용은 서버 관리자 권한 부여(Analysis Services) 를 참조하세요.
모든 역할은 사용자 정의이므로 이 용도로 전용 역할을 만든 다음(예: "dbadmin"이라는 역할) Windows 사용자 및 그룹 계정을 그에 따라 할당하는 것이 좋습니다.
SSMS에서 역할 만들기
SQL Server Management Studio에서 Analysis Services 인스턴스에 연결하고, 데이터베이스 폴더를 열고, 데이터베이스를 선택한 후, Roles를 마우스 오른쪽 버튼으로 클릭하고 새 역할을 선택합니다.
일반 창에서 DBAdmin과 같은 이름을 입력합니다.
큐브에 대한 모든 권한(관리자) 확인란을 선택합니다.
Process Database및Read Definition이 자동으로 선택되는 것을 확인하세요. 이 두 가지 권한은 항상Full Control를 포함한 역할에 포함됩니다.멤버 자격 창에서 이 역할을 사용하여 Analysis Services에 연결하는 Windows 사용자 및 그룹 계정을 입력합니다.
확인을 클릭하여 역할 만들기를 완료합니다.
프로세스 데이터베이스
데이터베이스 권한을 부여하는 역할을 정의할 때, Full Control을 건너뛰고 Process Database만 선택할 수 있습니다. 데이터베이스 수준에서 설정된 이 권한은 데이터베이스 내의 모든 개체에 대한 처리를 허용합니다.
프로세스 권한 부여(Analysis Services) 참조
정의 읽기
마찬가지로 Process Database데이터베이스 수준에서 사용 권한을 설정 Read Definition 하면 데이터베이스 내의 다른 개체에 연속적인 영향을 줍니다. 읽기 정의 권한을 보다 세부적인 수준으로 설정하려면 일반 창에서 읽기 정의를 데이터베이스 속성으로 지워야 합니다. 자세한 내용은 개체 메타데이터에 대한 읽기 정의 권한 부여(Analysis Services) 를 참조하세요.
또한 참조하십시오
서버 관리자 권한 부여(Analysis Services)프로세스 권한 부여(Analysis Services)