Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Применимо к:SQL Server
База данных
SQL AzureУправляемый экземпляр
SQL AzureБаза данных SQL в Microsoft Fabric
Запрещает разрешения для системных объектов, например хранимых процедур, расширенных хранимых процедур, функций и представлений.
Соглашения о синтаксисе Transact-SQL
Syntax
DENY { SELECT | EXECUTE } ON [ sys. ] system_object TO principal
Arguments
[ sys. ]
Квалификатор sys требуется только в том случае, если вы ссылаетесь на представления каталога и динамические административные представления.
system_object
Указывает объект, для которого запрещается разрешение.
principal
Задает участника, у которого отменяется разрешение.
Remarks
Эту инструкцию можно использовать для запрета разрешений для определенных хранимых процедур, расширенных хранимых процедур, табличных функций, скалярных функций, представлений каталога, представлений совместимости, INFORMATION_SCHEMA представлений, динамических административных представлений и системных таблиц, установленных SQL Server. Каждый из этих системных объектов существует как уникальная запись в базе данных ресурсов (mssqlsystemresource). Она доступна только для чтения. Ссылка на объект предоставляется в виде записи в схеме sys каждой базы данных.
Разрешение имен по умолчанию устраняет проблему неправомочных имен процедур в базе данных ресурсов.
sys Поэтому квалификатор требуется только при указании представлений каталога и динамических административных представлений.
Caution
Запрет разрешений на системные объекты приводит к сбою приложений, зависящих от них. СРЕДА SQL Server Management Studio использует представления каталога и может не работать должным образом, если изменить разрешения по умолчанию для представлений каталога.
Запрет разрешений на триггеры и столбцы системных объектов не поддерживается.
Разрешения на системные объекты сохраняются во время обновления SQL Server.
Системные объекты отображаются в представлении каталога sys.system_objects. Разрешения на системные объекты отображаются в представлении каталога sys.database_permissions в master базе данных.
В результате выполнения следующего запроса извлекаются данные о разрешениях на доступ к системным объектам:
SELECT *
FROM master.sys.database_permissions AS dp
INNER JOIN sys.system_objects AS so
ON dp.major_id = so.object_id
WHERE dp.class = 1
AND so.parent_object_id = 0;
GO
Permissions
Требуется разрешение CONTROL SERVER.
Examples
В следующем примере запрещено EXECUTE разрешение xp_cmdshell на доступ к общедоступному доступу.
DENY EXECUTE ON sys.xp_cmdshell TO PUBLIC;
GO