Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Applies to: SQL Server Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
Пакет обновления 1 (CU1) SQL Server 2022 Analysis Services (SSAS) и более поздние версии включают улучшенное шифрование для определенных операций записи в схему базы данных модели. При обновлении с более ранней версии SSAS необходимо обновить базы данных модели, чтобы использовать последнее шифрование. Если шифрование не обновлено, некоторые операции записи схемы базы данных блокируются. Например, нельзя добавить новый источник данных или изменить строки подключения.
Caution
Новые или обновленные базы данных Служб Analysis Services с расширенным шифрованием нельзя загрузить в более ранних версиях служб SQL Server Analysis Services.
Обновление баз данных табличной модели
Для баз данных табличной модели на уровне совместимости 1600 и выше может быть возвращена следующая ошибка во время определенных операций записи схемы.
"Новая табличная база данных "%{DatabaseName/}" не использует последнюю схему шифрования. Выполните команду RemoveDiscontinuedFeatured с параметром EnsureProperEncryption (или восстановление базы данных из файла резервной копии с тем же параметром), чтобы обновить до последней версии шифрования".
To upgrade encryption, either back up the database and then restore with the EnsureProperEncryption option enabled by running the following XMLA command in SQL Server Management Studio:
<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine" Transaction="false" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl100="http://schemas.microsoft.com/analysisservices/2008/engine/100">
<Restore xmlns="http://schemas.microsoft.com/analysisservices/2003/engine" xmlns:ddl922="http://schemas.microsoft.com/analysisservices/2022/engine/922">
<File>your_backup_file_pathname</File>
<AllowOverwrite>true</AllowOverwrite>
<ddl922:EnsureProperEncryption>true</ddl922:EnsureProperEncryption>
</Restore>
</Batch>
Или, если база данных уже загружена, выполните следующую команду XML для анализа (XMLA) в SQL Server Management Studio:
<RemoveDiscontinuedFeatures xmlns='http://schemas.microsoft.com/analysisservices/2003/engine' xmlns:ddl922='http://schemas.microsoft.com/analysisservices/2022/engine/922'>
<DatabaseID>DatabaseName</DatabaseID>
<ddl922:EnsureProperEncryption>true</ddl922:EnsureProperEncryption>
</RemoveDiscontinuedFeatures>
Обновление многомерных баз данных моделей
Для баз данных многомерной модели на всех уровнях совместимости можно вернуть следующую ошибку во время определенных операций записи схемы:
"Многомерная база данных "%{DatabaseName/}" не использует последнюю схему шифрования. Создайте файл резервной копии и восстановите базу данных из файла резервной копии с параметром EnsureProperEncryption для обновления до последней версии шифрования".
To upgrade encryption, back up the database and then restore with the EnsureProperEncryption option enabled.
Или, если база данных уже загружена, выполните следующую команду XMLA в SQL Server Management Studio:
<RemoveDiscontinuedFeatures xmlns='http://schemas.microsoft.com/analysisservices/2003/engine' xmlns:ddl922='http://schemas.microsoft.com/analysisservices/2022/engine/922'>
<DatabaseID>DatabaseName</DatabaseID>
<ddl922:EnsureProperEncryption>true</ddl922:EnsureProperEncryption>
</RemoveDiscontinuedFeatures>
Управление временем существования ключей
Службы SQL Server Analysis Services используют ключ шифрования базы данных для шифрования конфиденциальных данных на основе каждой базы данных, таких как учетные данные источника данных и строки подключения. В SSAS 2025 и более поздних версиях вы можете использовать набор строк схемы DBSCHEMA_CATALOGS для определения уровня шифрования баз данных модели, а также возраста ключа базы данных. Проверьте столбец ENCRYPTION_LEVEL и убедитесь, что уровень соответствует Analysis Services CU 2022. Проверьте столбец CRYPTOKEY_UPDATED, чтобы определить дату создания или дату последнего обновления ключа шифрования базы данных.
Ключ шифрования базы данных можно повторно создать с помощью команды RemoveDiscontinuedFeatures. Как и при обновлении устаревшего шифрования, описанном ранее, команда RemoveDiscontinuedFeatures расшифровывает защищаемые данные, создает новый ключ шифрования базы данных, а затем повторно шифрует защищаемые данные с помощью нового ключа шифрования базы данных.
<RemoveDiscontinuedFeatures xmlns='http://schemas.microsoft.com/analysisservices/2003/engine' xmlns:ddl922='http://schemas.microsoft.com/analysisservices/2022/engine/922'>
<DatabaseID>DatabaseName</DatabaseID>
<ddl922:EnsureProperEncryption>true</ddl922:EnsureProperEncryption>
</RemoveDiscontinuedFeatures>
Процедуры изменения учетной записи службы
Службы SQL Server Analysis Services шифруют каждый ключ шифрования базы данных с помощью серверного ключа шифрования. Расширенное шифрование в SSAS 2022 CU1 и более поздних версиях использует API защиты данных (DPAPI) для безопасной защиты и доступа к ключу шифрования сервера с помощью сведений из текущей учетной записи службы и учетной записи локального компьютера. Ключ шифрования сервера можно расшифровать только с помощью той же учетной записи службы на локальном компьютере. Из-за зависимости от текущей учетной записи службы убедитесь, что вы выполните приведенные ниже процедуры для изменения учетной записи службы SQL Server Analysis Services.
Изменение учетной записи службы многомерного экземпляра
Если необходимо изменить учетную запись службы экземпляра сервера, работающего в многомерном режиме, необходимо создать резервную копию баз данных модели, удалить и повторно установить сервер, а затем восстановить базы данных модели. Этот подход гарантирует правильность шифрования всех защищаемых объектов, включая учетные данные QueryLogConnectionString и ImpersonationAccount. Alternatively, you can also use an attach/detach approach, but this approach requires you to preserve the existing data folder.
Используйте SSMS для резервного копирования каждой базы данных в ABF-файл.
Удалите экземпляр сервера SSAS.
Удалите все остатки удаленного экземпляра сервера, такие как оставшиеся папки данных или файлы конфигурации.
Установите новый экземпляр сервера SSAS и назначьте новую учетную запись службы.
Восстановите базы данных из резервных файлов ABF.
Используйте осторожность при реализации этих действий, чтобы избежать уязвимостей в системе безопасности или потери данных. Всегда выполняйте резервное копирование данных и ищите рекомендации от системного администратора, прежде чем вносить существенные изменения в учетные записи служб или конфигурации сервера.
Изменение служебной учетной записи для экземпляра табличной модели
Экземпляры табличных серверов не требуют полной переустановки сервера, так как табличные серверы не используют учетные данные QueryLogConnectionString или ImpersonationAccount. Несмотря на то, что процедура не зависит от резервных копий базы данных, всегда следует выполнять резервное копирование данных и искать рекомендации от системного администратора, прежде чем вносить существенные изменения в учетные записи служб или конфигурации сервера.
Рекомендуется, но необязательно, используйте SSMS для резервного копирования каждой базы данных в ABF-файл.
Отключите все базы данных модели.
Остановите службу SSAS.
Удалите все файлы в папке Data, кроме файла Administrators.xml и файла master.vmp, удалите строку подключения журнала запросов и пароль имперсонации в файле msmdsrv.ini, и сохраните каталоги баз данных.
Измените учетную запись службы SSAS.
Запустите службу SSAS.
Повторно подключите все базы данных модели.
Перемещение баз данных модели в другой экземпляр сервера
Если необходимо перенести базы данных модели между серверами, важно использовать метод резервного копирования и восстановления или отсоединения и присоединения. Дополнительные сведения об использовании подхода отсоединение/подключение см. в статье "Перемещение базы данных Служб Analysis Services" с помощью SSMS, AMO или XMLA.
Поддержка отказоустойчивого кластера
Службы SQL Server 2025 Analysis Services с расширенным шифрованием можно установить в отказоустойчивый кластер Windows Server (WSFC) для обеспечения высокой доступности. В среде WSFC все экземпляры сервера должны использовать ту же учетную запись пользователя домена Active Directory, что и учетная запись службы, чтобы ключ шифрования сервера можно было расшифровать на всех экземплярах сервера. Локальные учетные записи Windows, учетные записи Build-In и учетные записи Entra ID не поддерживаются.
Note
Sql Server 2022 Analysis Services CU1 с расширенным шифрованием не обеспечивает поддержку отказоустойчивого кластера. Чтобы воспользоваться расширенным шифрованием в среде отказоустойчивого кластера, необходимо обновить до SQL Server 2025 Analysis Services.
Troubleshooting
Problem: If the backup/restore steps above aren't followed, changing SQL Server 2022 Analysis Services service account can cause the service to fail to start.
Следующее сообщение в файле Log\msmdsrv.log указывает, что служба не может запуститься, так как учетная запись службы была изменена:
"Ключ шифрования 2-го поколения отсутствует, но система объектов сборки сервера настроена на использование шифрования сервера 2-го поколения. Завершающий сервер. (Источник: \?\C:\Program Files\Microsoft SQL Server\MSAS16. MSSQLSERVER\OLAP\Log\msmdsrv.log, тип: 1, категория: 289, идентификатор события: 0x4121005C"
Solution: In the msmdsrv.ini file, in ConfigurationSettings>DataDir, determine the location of the Data folder. Then in the Data folder, delete the files with the name containing .asm.xml, and all folders with an .asm extension.
После удаления файлов перезапустите службу Analysis Services. Файлы с расширением .asm создаются снова автоматически.
Затем с помощью SQL Server Management Studio (SSMS) необходимо настроить следующие зашифрованные свойства:
- Log\QueryLog\QueryLogConnectionString.
- Пароль для аккаунта имитации или пароль аутентификации для каждого источника данных.
See also
Резервное копирование и восстановление баз данных служб Analysis Services
Уровень совместимости для табличных моделей