GRANT, предоставление разрешения на компонент Service Broker (Transact-SQL)
Область применения: SQL Server Управляемый экземпляр SQL Azure
Предоставляет разрешения на контракт, тип сообщений, удаленную привязку, маршрут или службу компонента Service Broker.
Соглашения о синтаксисе Transact-SQL
Синтаксис
GRANT permission [ ,...n ] ON
{
[ CONTRACT :: contract_name ]
| [ MESSAGE TYPE :: message_type_name ]
| [ REMOTE SERVICE BINDING :: remote_binding_name ]
| [ ROUTE :: route_name ]
| [ SERVICE :: service_name ]
}
TO database_principal [ ,...n ]
[ WITH GRANT OPTION ]
[ AS granting_principal ]
Аргументы
permission
Указывает разрешение, которое может быть предоставлено на защищаемый объект компонента Service Broker. Перечислены ниже.
CONTRACT ::contract_name
Указывает контракт, на который предоставляется разрешение. Квалификатор области "::" является обязательным.
MESSAGE TYPE ::message_type_name
Указывает тип сообщений, на которые предоставляется разрешение. Квалификатор области "::" является обязательным.
REMOTE SERVICE BINDING ::remote_binding_name
Указывает привязку удаленной службы, на которую предоставляется разрешение. Квалификатор области "::" является обязательным.
ROUTE ::route_name
Указывает маршрут, на который предоставляется разрешение. Квалификатор области "::" является обязательным.
SERVICE ::имя_службы
Указывает службу, на которую предоставляется разрешение. Квалификатор области "::" является обязательным.
database_principal
Участник, которому предоставляется разрешение. Один из следующих:
пользователь базы данных;
роль базы данных;
роль приложения;
пользователь базы данных, сопоставленный с именем входа Windows;
пользователь базы данных, сопоставленный с группой Windows;
пользователь базы данных, сопоставленный с сертификатом;
пользователь базы данных, сопоставленный с асимметричным ключом;
пользователь базы данных, не сопоставленный с участником на уровне сервера.
GRANT OPTION
Показывает, что участнику будет дана возможность предоставлять указанное разрешение другим участникам.
granting_principal
Указывает участника, от которого участник, выполняющий данный запрос, наследует право на предоставление разрешения. Один из следующих:
пользователь базы данных;
роль базы данных;
роль приложения;
пользователь базы данных, сопоставленный с именем входа Windows;
пользователь базы данных, сопоставленный с группой Windows;
пользователь базы данных, сопоставленный с сертификатом;
пользователь базы данных, сопоставленный с асимметричным ключом;
пользователь базы данных, не сопоставленный с участником на уровне сервера.
Замечания
Контракты компонента Service Broker
Контракт компонента Service Broker представляет собой защищаемый на уровне базы данных объект, входящий в родительскую по иерархии разрешений базу данных. Ниже перечислены наиболее специфичные и ограниченные разрешения (вместе с наиболее общими разрешениями, куда они неявно входят), которые могут предоставляться для контракта компонента Service Broker.
Разрешение контракта компонента Service Broker | Содержится в разрешении контракта компонента Service Broker | Содержится в разрешении базы данных |
---|---|---|
ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
TAKE OWNERSHIP | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
ИЗМЕНИТЬ | ПРОИЗВОДИТЕЛЬНОСТИ | ALTER ANY CONTRACT |
ССЫЛКИ | ПРОИЗВОДИТЕЛЬНОСТИ | ССЫЛКИ |
VIEW DEFINITION | ПРОИЗВОДИТЕЛЬНОСТИ | VIEW DEFINITION |
Типы сообщений компонента Service Broker
Тип сообщений компонента Service Broker представляет собой защищаемый на уровне базы данных объект, входящий в родительскую по иерархии разрешений базу данных. Ниже перечислены наиболее специфичные и ограниченные разрешения (вместе с наиболее общими разрешениями, куда они неявно входят), которые могут предоставляться для типа сообщений компонента Service Broker.
Разрешение типа сообщений компонента Service Broker | Содержится в разрешении типа сообщений компонента Service Broker | Содержится в разрешении базы данных |
---|---|---|
ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
TAKE OWNERSHIP | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
ИЗМЕНИТЬ | ПРОИЗВОДИТЕЛЬНОСТИ | ALTER ANY MESSAGE TYPE |
ССЫЛКИ | ПРОИЗВОДИТЕЛЬНОСТИ | ССЫЛКИ |
VIEW DEFINITION | ПРОИЗВОДИТЕЛЬНОСТИ | VIEW DEFINITION |
Привязки удаленной службы компонента Service Broker
Привязка удаленной службы компонента Service Broker представляет собой защищаемый на уровне базы данных объект, входящий в родительскую по иерархии разрешений базу данных. Ниже перечислены наиболее специфичные и ограниченные разрешения (вместе с наиболее общими разрешениями, куда они неявно входят), которые могут предоставляться для привязки удаленной службы компонента Service Broker.
Разрешение привязки удаленной службы компонента Service Broker | Содержится в разрешении привязки удаленной службы компонента Service Broker | Содержится в разрешении базы данных |
---|---|---|
ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
TAKE OWNERSHIP | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
ИЗМЕНИТЬ | ПРОИЗВОДИТЕЛЬНОСТИ | ALTER ANY REMOTE SERVICE BINDING |
VIEW DEFINITION | ПРОИЗВОДИТЕЛЬНОСТИ | VIEW DEFINITION |
Маршруты компонента Service Broker
Маршрут компонента Service Broker представляет собой защищаемый на уровне базы данных объект, входящий в родительскую по иерархии разрешений базу данных. Ниже перечислены наиболее специфичные и ограниченные разрешения (вместе с наиболее общими разрешениями, куда они неявно входят), которые могут предоставляться для маршрута компонента Service Broker.
Разрешение маршрута компонента Service Broker | Содержится в разрешении маршрута компонента Service Broker | Содержится в разрешении базы данных |
---|---|---|
ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
TAKE OWNERSHIP | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
ИЗМЕНИТЬ | ПРОИЗВОДИТЕЛЬНОСТИ | ALTER ANY ROUTE |
VIEW DEFINITION | ПРОИЗВОДИТЕЛЬНОСТИ | VIEW DEFINITION |
Службы компонента Service Broker
Служба компонента Service Broker представляет собой защищаемый на уровне базы данных объект, входящий в родительскую по иерархии разрешений базу данных. Ниже перечислены наиболее специфичные и ограниченные разрешения (вместе с наиболее общими разрешениями, куда они неявно входят), которые могут предоставляться для службы компонента Service Broker.
Разрешение службы компонента Service Broker | Содержится в разрешении службы компонента Service Broker | Содержится в разрешении базы данных |
---|---|---|
ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
TAKE OWNERSHIP | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
SEND | ПРОИЗВОДИТЕЛЬНОСТИ | ПРОИЗВОДИТЕЛЬНОСТИ |
ИЗМЕНИТЬ | ПРОИЗВОДИТЕЛЬНОСТИ | ALTER ANY SERVICE |
VIEW DEFINITION | ПРОИЗВОДИТЕЛЬНОСТИ | VIEW DEFINITION |
Разрешения
Объект, предоставляющий разрешение (или участник, указанный параметром AS), должен иметь либо само разрешение, выданное с помощью параметра GRANT OPTION, либо разрешение более высокого уровня, которое неявно включает предоставляемое.
Если используется параметр AS, налагаются следующие дополнительные требования.
AS granting_principal | Необходимо дополнительное разрешение |
---|---|
пользователь базы данных; | Разрешение IMPERSONATE для пользователя, членство в предопределенной роли базы данных db_securityadmin, членство в предопределенной роли базы данных db_owner или членство в предопределенной роли сервера sysadmin. |
пользователь базы данных, сопоставленный с именем входа Windows; | Разрешение IMPERSONATE для пользователя, членство в предопределенной роли базы данных db_securityadmin, членство в предопределенной роли базы данных db_owner или членство в предопределенной роли сервера sysadmin. |
пользователь базы данных, сопоставленный с группой Windows; | Членство в группе Windows, членство в предопределенной роли базы данных db_securityadmin, членство в предопределенной роли базы данных db_owner или членство в предопределенной роли сервера sysadmin. |
пользователь базы данных, сопоставленный с сертификатом; | Членство в предопределенной роли базы данных db_securityadmin, членство в предопределенной роли базы данных db_owner или членство в предопределенной роли сервера sysadmin. |
пользователь базы данных, сопоставленный с асимметричным ключом; | Членство в предопределенной роли базы данных db_securityadmin, членство в предопределенной роли базы данных db_owner или членство в предопределенной роли сервера sysadmin. |
Пользователь базы данных, не сопоставленный ни с одним участником на уровне сервера | Разрешение IMPERSONATE для пользователя, членство в предопределенной роли базы данных db_securityadmin, членство в предопределенной роли базы данных db_owner или членство в предопределенной роли сервера sysadmin. |
роль базы данных; | Разрешение ALTER на роль, членство в предопределенной роли базы данных db_securityadmin, предопределенной роли базы данных db_owner или предопределенной роли сервера sysadmin. |
Роль приложения | Разрешение ALTER на роль, членство в предопределенной роли базы данных db_securityadmin, предопределенной роли базы данных db_owner или предопределенной роли сервера sysadmin. |
Владельцы объектов могут предоставлять разрешения на объекты, которыми они владеют. Участники, имеющие разрешение CONTROL на защищаемый объект, могут предоставлять разрешение на этот защищаемый объект.
Участники, которым предоставлено разрешение CONTROL SERVER, такие как члены предопределенной роли сервера sysadmin, могут предоставлять любое разрешение для любого защищаемого объекта сервера. Участники, получившие разрешение CONTROL для базы данных, такие как члены предопределенной роли базы данных db_owner, могут предоставлять любое разрешение для любого защищаемого объекта в базе данных. Владельцы разрешения CONTROL, связанного со схемой, могут предоставлять любые разрешения на работу с любыми объектами, содержащимися в данной схеме.
См. также
SQL Server Service Broker
GRANT (Transact-SQL)
Разрешения (ядро СУБД)
Субъекты (ядро СУБД)