Поделиться через


Предоставление доступа к объектам и операциям (Analysis Services)

Доступ пользователей без прав администратора к кубам, измерениям и моделям интеллектуального анализа данных в базе данных служб Analysis Services предоставляется через членство в одной или нескольких ролях базы данных. Администраторы служб Analysis Services создают эти роли базы данных, предоставляя разрешения на чтение или чтение и запись для объектов служб Analysis Services, а затем назначают пользователям и группам Microsoft Windows каждой роли.

Службы Analysis Services определяют действующие разрешения для определенного пользователя или группы Windows, объединяя разрешения, связанные с каждой ролью базы данных, к которой принадлежит пользователь или группа. Как следствие, если одна роль базы данных не предоставляет пользователю или группе разрешения на просмотр измерения, меры или атрибута, но при этом другая роль базы данных предоставляет пользователю или группе такое разрешение, то у пользователя или группы будет разрешение на просмотр объекта.

Важно!

Члены роли администратора сервера служб Analysis Services и члены роли базы данных с разрешениями полного доступа (администратор) могут получать доступ ко всем данным и метаданным в базе данных и не нуждаются в дополнительных разрешениях для просмотра определенных объектов. Кроме того, членам роли сервера служб Analysis Services нельзя запретить доступ к любому объекту в любой базе данных, а членам роли базы данных служб Analysis Services с разрешениями полного доступа (администратор) в базе данных нельзя запретить доступ к любому объекту в этой базе данных. Специальные административные операции, такие как обработка, можно авторизовать с помощью отдельных ролей с меньшими разрешениями. Дополнительные сведения см. в разделе Предоставление разрешений процесса (службы Analysis Services).

Список ролей, заданных для базы данных

Чтобы получить список ролей, заданных на сервере, администраторы могут выполнить простой запрос динамических административных представлений (DMV) в SQL Server Management Studio.

  1. В SSMS щелкните правой кнопкой мыши базу данных и выберите Создатьмногомерное выражениезапроса | .

  2. Введите следующий запрос и нажмите клавишу F5, чтобы выполнить его:

    Select * from $SYSTEM.DBSCHEMA_CATALOGS  
    

    В результате запроса будет показано имя базы данных, описание, имя роли и дата последнего изменения. Используя эти сведения в качестве отправной точки, можно переходить к отдельным базам данных и проверять членство и разрешения конкретной роли.

Организованный сверху вниз обзор авторизации Analysis Services

Этот раздел охватывает базовый рабочий процесс для настройки разрешений.

Шаг 1. Администрирование сервера

В качестве первого шага решите, кто будет обладать правами администратора на уровне сервера. Во время установки локальному администратору, установившему SQL Server, необходимо указать одну или несколько учетных записей Windows от имени администратора сервера служб Analysis Services. Администраторы сервера обладают всеми возможными разрешениями на сервере, включая разрешение на просмотр, изменение и удаление любого объекта на сервере или просмотр связанных данных. После завершения установки администратор сервера может добавить или удалить учетные записи, чтобы изменить членство этой роли. Дополнительные сведения об этом уровне разрешений см. в разделе Предоставление разрешений администратора сервера (службы Analysis Services).

Шаг 2. Администрирование базы данных

Далее, после создания табличного или многомерного решения оно развертывается на сервере как база данных. Администратор сервера может делегировать задачи администрирования базы данных, определив роль с разрешениями "Полный доступ" для соответствующей базы данных. Участники этой роли могут обработать или запросить объекты в базе данных, а также создать дополнительные роли для доступа к кубам, измерениям и другим объектам в самой базе данных. Дополнительные сведения см. в разделе Предоставление разрешений для базы данных (службы Analysis Services).

Шаг 3. Разрешение доступа к кубу или модели для запроса и обработки рабочих нагрузок

По умолчанию только администраторы сервера и базы данных имеют доступ к кубам или табличным моделям. Для предоставления этих структур данных другим пользователям организации требуются назначения дополнительных ролей, которые сопоставляют учетные записи пользователя и группы Windows с кубами или моделями, а также с разрешениями, определяющими привилегии Read. Дополнительные сведения см. в разделе Предоставление разрешений куба или модели (службы Analysis Services).

Обработку задач можно изолировать от других административных функций, позволив администраторам сервера и базы данных делегировать эту задачу другим пользователям или настроить автоматическую обработку, указав учетные записи службы, запускающие планирование программного обеспечения. Дополнительные сведения см. в разделе Предоставление разрешений процесса (службы Analysis Services).

Примечание

Пользователям не требуются разрешения на доступ к реляционным таблицам в базовой реляционной базе данных, из которой службы Analysis Services загружают свои данные, и не требуются разрешения на уровне файлов на компьютере, на котором запущен экземпляр служб Analysis Services.

Шаг 4. (Необязательно) Разрешение или отклонение доступа к внутренним объектам кубов

Службы Analysis Services предоставляют параметры безопасности для настройки разрешений для отдельных объектов, включая элементы измерения и ячейки в модели данных. Дополнительные сведения см. в разделах Предоставление пользовательского доступа к данным измерения (службы Analysis Services) и Предоставление пользовательского доступа к данным ячеек (службы Analysis Services).

Также можно изменять разрешения на базе удостоверения пользователя. Это часто называется динамической безопасностью и реализуется с помощью функции UserName (многомерные выражения).

Рекомендации

Для лучшего управления разрешениями рекомендуется использовать подход, аналогичный следующему.

  1. Создание ролей по названию функции (например, dbadmin, cubedeveloper, processadmin), чтобы пользователь, управляющий ролями мог сразу понять, что разрешает роль. Как указано ранее, роли можно определить в определении модели, сохранив их в последующих развертываниях решения.

  2. Создайте соответствующую группу безопасности Windows в Active Directory и сохраните ее в Active Directory, чтобы гарантировать, что она содержит соответствующие индивидуальные учетные записи. Таким образом, ответственность за членство группы безопасности ляжет на специалистов по безопасности, которые уже имеют опыт в работе со средствами и процессами, использующимися для обслуживания учетной записи в организации.

  3. Создавайте скрипты в SQL Server Management Studio, чтобы можно было быстро реплицировать назначения ролей при каждом повторном развертывании модели из исходных файлов на сервер. Сведения о том, как быстро создать скрипт, см. в статье Предоставление разрешений кубу или модели (службы Analysis Services ).

  4. Заключите соглашение об именовании, которое отражает область и членство роли. Имена ролей видны только в средствах конструирования и администрирования, поэтому следует использовать соглашение об именовании, знакомое специалистам по безопасности. Например, processadmin-windowsgroup1 указывает доступ на чтение и права на обработку для пользователей организации, чьи индивидуальные учетные записи Windows являются членами группы безопасности windowsgroup1 .

    Включение сведений об учетной записи может помочь отслеживать, какие учетные записи используются в разных ролях. Поскольку роли аддитивны, объединенные роли, связанные с windowsgroup1 , составляют набор действующих разрешений для пользователей, входящих в эту группу безопасности.

  5. Разработчикам кубов потребуются разрешения "Полный доступ" для разрабатываемых моделей и баз данных, но после передачи базы данных на рабочий сервер нужны только разрешения на чтение. Не забывайте разрабатывать определения ролей и назначения для всех сценариев, включая разработку, тестирование и рабочие развертывания.

Использование подобного подхода снижает время обработки определений ролей и членства ролей в модели, а также предоставляет видимость назначений ролей, что упрощает реализацию и поддержание разрешений кубов.

См. также:

Предоставление разрешений администратора сервера (службы Analysis Services)
Роли и разрешения (службы Analysis Services)
Методики проверки подлинности, поддерживаемые службами Analysis Services