Роли безопасности (службы Analysis Services — многомерные данные)
Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
Роли используются в microsoft SQL Server SQL Server Analysis Services для управления безопасностью объектов и данных SQL Server Analysis Services. По сути, роль связывает идентификаторы безопасности (ИДЕНТИФИКАТОРЫ) пользователей и групп Microsoft Windows, которые имеют определенные права доступа и разрешения, определенные для объектов, управляемых экземпляром SQL Server Analysis Services. В SQL Server Analysis Services предоставляются два типа ролей:
Предопределинная роль сервера, которая предоставляет доступ администратора к экземпляру SQL Server Analysis Services.
Роли базы данных — роли, определенные администраторами для контроля доступа к объектам и данным пользователям, которые не являются администраторами.
Безопасность в Microsoft SQL Server SQL Server Analysis Services безопасностью управляется с помощью ролей и разрешений. Роли — это группы пользователей. Пользователи, называемые также членами, могут быть добавлены или удалены из состава ролей. Разрешения для объектов регламентируются с помощью ролей, и все члены, относящиеся к некоторой роли, могут использовать объекты, на которые в этой роли имеются разрешения. Все члены одной и той же роли имеют одинаковые разрешения на объекты. Разрешения связаны с конкретными объектами. Для каждого объекта предусмотрена коллекция разрешений, в которой указаны предоставленные разрешения на этот объект, причем на каждый объект могут быть предоставлены разные наборы разрешений. Для каждого разрешения из коллекции разрешений объекта назначена отдельная роль.
Объекты ролей и членов ролей
Роль — это объект, который предназначен для использования в качестве контейнера для коллекции пользователей (членов). Определение роли определяет членство пользователей в SQL Server Analysis Services. Таким образом, разрешения присваиваются с учетом роли, поэтому пользователь должен стать членом роли, прежде чем получить доступ к какому-либо объекту.
Объект Role состоит из значений параметров Name, Id и Members. Значение Members — это коллекция строк. Каждый член роли содержит имя пользователя в форме «домен\имя_пользователя». Значение Name — это строка, которая содержит имя роли. Значение ID — это строка, которая содержит уникальный идентификатор роли.
Роль сервера
Роль сервера SQL Server Analysis Services определяет административный доступ пользователей и групп Windows к экземпляру SQL Server Analysis Services. Члены этой роли имеют доступ ко всем SQL Server Analysis Services базам данных и объектам в экземпляре SQL Server Analysis Services и могут выполнять следующие задачи:
Выполнение административных функций на уровне сервера с помощью SQL Server Management Studio или SQL Server Data Tools, включая создание баз данных и настройку свойств уровня сервера.
Выполнение административных функций программным методом с помощью объектов AMO.
Поддержка SQL Server Analysis Services ролей базы данных.
Запуск трассировок (отличных от обработки событий, которые могут выполняться ролью базы данных с правом доступа Process).
Каждый экземпляр SQL Server Analysis Services имеет роль сервера, которая определяет, какие пользователи могут администрировать этот экземпляр. Имя и идентификатор этой роли — «Администраторы»; в отличие от ролей базы данных, роль сервера удалить нельзя, в нее также нельзя добавлять разрешения или удалять их. Другими словами, пользователь либо является администратором экземпляра SQL Server Analysis Services, либо не является администратором, в зависимости от того, включен ли он в роль сервера для этого экземпляра SQL Server Analysis Services.
Роли базы данных
Роль SQL Server Analysis Services базы данных определяет доступ пользователей к объектам и данным в базе данных SQL Server Analysis Services. Роль базы данных создается как отдельный объект в базе данных SQL Server Analysis Services и применяется только к базе данных, в которой создается эта роль. Пользователи и группы Windows включаются в эту роль администратором. Он же определяет разрешения этой роли.
Разрешения роли, помимо доступа к объектам и данным в базе данных, позволяют членам роли получить доступ и права администрирования базы данных. Каждое разрешение имеет одно или несколько связанных прав доступа, которые, в свою очередь, позволяют точно контролировать доступ к отдельным объектам в базе данных.
Объекты разрешений
Разрешения связаны с объектом (куб, измерение и др.) для конкретной роли. Разрешения указывают на то, какие операции может выполнять над этим объектом член этой роли.
Класс Permission представляет собой абстрактный класс. Поэтому необходимо использовать производные классы для определения разрешений на соответствующие объекты. Для каждого объекта определяется производный класс разрешения.
Объект | Класс |
---|---|
Database | DatabasePermission |
DataSource | DataSourcePermission |
Dimension | DimensionPermission |
Cube | CubePermission |
MiningStructure | MiningStructurePermission |
MiningModel | MiningModelPermission |
Возможные действия, допускаемые в соответствии с разрешениями, показаны в следующем списке.
Действие | Значения | Описание |
---|---|---|
Процесс | {true, false} Default=false |
Если дано значение true, то члены роли могут обрабатывать и сам объект, и любые содержащиеся в нем объекты. Разрешения на обработку не применяются к моделям интеллектуального анализа данных. Разрешения MiningModel всегда наследуются от MiningStructure. |
ReadDefinition | {None, Basic, Allowed} Default=None |
Определяет, могут ли члены читать определение данных (в коде ASSL), связанное с объектом. Если дано значение Allowed, то члены могут читать код ASSL, связанный с объектом. РазрешенияBasic и Allowed наследуются объектами, которые содержатся в данном объекте. Allowed переопределяет Basic и None. РазрешениеAllowed необходимо для выполнения операции DISCOVER_XML_METADATA над объектом. РазрешениеBasic необходимо для создания связанных объектов и локальных кубов. |
Read | {None, Allowed} Default=None (за исключением DimensionPermission, где default=Allowed) |
Указывает, имеют ли члены доступ для чтения к наборам строк схемы и содержимому данных. ЗначениеAllowed предоставляет доступ для чтения в базе данных, что позволяет изучать состав объектов базы данных. Разрешено в кубе, предоставляет доступ на чтение в наборах строк схемы и доступ к содержимому куба (если не ограничивается CellPermission и CubeDimensionPermission). Разрешено в измерении предоставляет разрешение на чтение всех атрибутов в измерении (если не ограничивается параметром CubeDimensionPermission). Разрешение на чтение используется для статического наследования только для CubeDimensionPermission. None применительно к измерению скрывает это измерение и предоставляет доступ к члену по умолчанию только для статистически обрабатываемых атрибутов. Если измерение содержит статистически необрабатываемый атрибут, возникает ошибка. Разрешено в предоставляет MiningModelPermission разрешения на просмотр объектов в наборах строк схемы и выполнение прогнозируемых соединений. Примечание. Для чтения или записи в любой объект в базе данных требуется значениеAllowed. |
Write | {None, Allowed} Default=None |
Указывает, имеют ли члены доступ для записи к данным родительского объекта. Права доступа относятся к подклассам Dimension, Cube и MiningModel. Они не применяются к подклассам базы данных MiningStructure, которые создают сообщения ошибок проверки. Разрешено для предоставляет Dimension разрешение на запись для всех атрибутов в измерении. Разрешено для предоставляет Cube разрешение на запись в ячейки куба для секций, определенных как Type=writeback. Разрешено для предоставляет MiningModel разрешение на изменение содержимого модели. Разрешено для не MiningStructure имеет конкретного значения в SQL Server Analysis Services. Примечание. Запись не может быть задана как Разрешенная, если для чтения также не задано значение Разрешено. |
Администрирование Примечание. Только в разрешениях базы данных |
{true, false} Default=false |
Указывает, могут ли члены выполнять административные функции по отношению к базе данных. Значениеtrue предоставляет членам роли разрешение для доступа ко всем объектам в базе данных. Член роли может иметь разрешение на администрирование применительно к какой-то конкретной базе данных, но не к другим. |
См. также:
Разрешения и права доступа (службы Analysis Services — многомерные данные)
Предоставление доступа к объектам и операциям (Analysis Services)