К улучшениям безопасности компонента Компонент SQL Server Database Engine относятся провизионирование во время установки, новые разрешения SEARCH PROPERTY LIST, новые, определяемые пользователем роли сервера, а также новые способы управления ролями сервера и базы данных.
Провизионирование во время установки
Чтобы улучшить разделение ролей, группы ВСТРОЕННЫЕ\администраторы и Локальная система (NT AUTHORITY\SYSTEM) не провизионируются автоматически в предопределенную роль сервера sysadmin. Локальные администраторы могут получить доступ к компоненту Database Engine в однопользовательском режиме.
Теперь при установке в Windows 7 или Windows Server 2008 R2 SQL Server поддерживает управляемые учетные записи служб и виртуальные учетные записи. Дополнительные сведения см. в разделе Настройка учетных записей службы Windows и разрешений.
Теперь защита работающих служб в SID каждой службы расширена на все операционные системы. Дополнительные сведения см. в разделе Настройка учетных записей службы Windows и разрешений.
Новые разрешения
В компоненте Database Engine доступно 19 новых разрешений. Чтобы просмотреть все разрешения, выполните следующую инструкцию.
Transact-SQL
Копировать
SELECT * FROM sys.fn_builtin_permissions('');
Далее представлены новые разрешения.
Новые разрешения GRANT, DENY и REVOKE для операций CONTROL/VIEW DEFINTION/TAKE OWNERSHIP/REFERENCES/ALTER ON со списком свойств поиска.
Новые разрешения GRANT, DENY и REVOKE для операций ALTER ANY SERVER ROLE, CREATE SERVER ROLE и CONTROL/VIEW DEFINTION/TAKE OWNERSHIP/ALTER ON с ролью сервера.
Новые разрешения GRANT, DENY и REVOKE для операций ALTER ANY AVAILABILITY GROUP, CREATE AVAILABILITY GROUP и CONTROL/VIEW DEFINTION/TAKE OWNERSHIP/ALTER ON с группой доступности.
Новые разрешения GRANT, DENY и REVOKE для операции CREATE SEQUENCE.
Новые разрешения GRANT, DENY и REVOKE для операции ALTER ANY EVENT SESSION.
Новое управление ролями
Теперь доступны определяемые пользователем роли сервера. Для управления определяемыми пользователем ролями сервера используйте инструкции CREATE SERVER ROLE, ALTER SERVER ROLE и DROP SERVER ROLE. Для добавления и удаления членов из всех ролей сервера используйте инструкцию ALTER SERVER ROLE … WITH ADD MEMBER. Процедуры sp_addsrvrolemember и sp_dropsrvrolemember являются устаревшими.
Инструкция ALTER ROLE изменена и позволяет добавлять членов в роли и удалять их из ролей с помощью синтаксиса ADD MEMBER. Процедуры sp_addrolemember и sp_droprolemember являются устаревшими.
Добавлена инструкция IS_ROLEMEMBER для проверки членства в ролях базы данных.
Схема по умолчанию для групп
Теперь можно определить схему по умолчанию для группы Windows. Когда объект создается пользователем Windows, а схема по умолчанию не задана, SQL Server больше не будет автоматически создавать схему. CREATE USER.
Улучшенные возможности подсистемы аудита SQL Server
Поддержка аудита на уровне сервера теперь распространяется на все выпуски SQL Server. Аудит на уровне базы банных доступен только в выпусках Enterprise Edition, Developer Edition и Evaluation Edition.
Аудит SQL Server стал более гибким по отношению к записям, вносимым в журнал аудита. Например, если целевой каталог находится на удаленном общем ресурсе и происходит отключение от сети, аудит SQL Server возобновится сразу после восстановления сетевого подключения. Кроме того, добавлен новый параметр, прекращающий операцию, которая вызывает событие аудита, записываемое в целевой объект аудита, давший сбой. Дополнительные сведения о параметре FAIL_OPERATION для события ON_FAILURE см. в разделе CREATE SERVER AUDIT.
Ранее журналы аудита не были ограничены по количеству файлов либо перезаписывались по достижении определенного числа. Теперь количество файлов аудита ограничивается без перезаписи, таким образом пользователи могут контролировать объем собираемой информации без потери записей аудита.. в описании параметра MAX_FILES для события CREATE SERVER AUDIT.
Когда это возможно, журнал аудита предоставляет дополнительные сведения о кадре стека Transact-SQL. Теперь во многих случаях аудиторы могут определить, был ли запрос отправлен посредством хранимой процедуры или непосредственно приложением.
Параметры аудита SQL Server поддерживают группу аудита, определяемую пользователем. Подвергшиеся аудиту события могут быть записаны в журнал аудита с помощью новой процедуры sp_audit_write (Transact-SQL). События аудита, определяемые пользователем, позволяют приложениям вносить в журнал аудита пользовательские сведения, такие как имя пользователя приложения, в случаях, если для подключения к SQL Server используется общее имя входа.
Для отслеживания событий, определяемых пользователем, в представления sys.server_file_audits, sys.server_audits и sys.fn_get_audit_file добавлены новые столбцы.
Аудит SQL Server поддерживает фильтрацию событий аудита до записи в журнал аудита. Дополнительные сведения см. в описании предложения WHERE для инструкций CREATE SERVER AUDIT и ALTER SERVER AUDIT.
Новые группы аудита поддерживают наблюдения за пользователями автономных баз данных.
В диалоговых окнах аудита среды Management Studio добавлены новые параметры аудита.
Доступ к компоненту Database Engine разрешен из автономных баз данных
Доступ к автономным базам данных обеспечивается через пользователей автономных баз данных, которым не требуются имена входа. Системные администраторы SQL Server должны знать, как автономные базы данных изменяют модель безопасности SQL Server. Дополнительные сведения см. в разделе Рекомендации по обеспечению безопасности автономных баз данных.
Алгоритмы хеширования
Функция HASHBYTES теперь поддерживает алгоритмы SHA2_256 и SHA2_512.
Дальнейшее устаревание алгоритма RC4
Алгоритм RC4 поддерживается только в целях обратной совместимости. Когда база данных имеет уровень совместимости 90 или 100, новые материалы могут шифроваться только с помощью алгоритмов RC4 или RC4_128. (Не рекомендуется.) Используйте вместо этого более новые алгоритмы, например AES. В SQL Server 2012 материалы, зашифрованные с помощью алгоритмов RC4 или RC4_128, могут быть расшифрованы на любом уровне совместимости.
Длина ключа сертификата
При создании сертификатов максимальная длина закрытых ключей, импортируемых из внешнего источника, увеличивается с 3 456 до 4 096 бит.
Алгоритм шифрования главного ключа службы и главного ключа базы данных изменяется с 3DES на AES
В SQL Server 2012 для защиты главного ключа службы и главного ключа базы данных используется алгоритм шифрования AES. AES — это новый алгоритм шифрования, отличный от алгоритма 3DES, используемого в более ранних версиях. После обновления экземпляра компонента Database Engine до SQL Server 2012 необходимо заново сформировать главный ключ службы и главный ключ базы данных, чтобы обновить главные ключи до алгоритма AES. Дополнительные сведения о повторном создании главного ключа службы см. в разделах ALTER SERVICE MASTER KEY (Transact-SQL) и ALTER MASTER KEY (Transact-SQL).
Сертификаты можно создавать на основе двоичных файлов
В Инструкция CREATE CERTIFICATE (Transact-SQL) есть параметр FROM BINARY, позволяющий указывать двоичное описание сертификата в кодировке ASN. Новые функции CERTENCODED (Transact-SQL) и CERTPRIVATEKEY (Transact-SQL) позволяют извлекать двоичное описание существующего сертификата.