Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:SQL Server
Удаленные серверы поддерживаются только в SQL Server для обратной совместимости. Новые приложения должны использовать вместо них связанные серверы. Дополнительные сведения см. в разделе "Связанные серверы ( ядро СУБД)".
Конфигурация удаленного сервера позволяет клиенту, подключенному к одному экземпляру SQL Server, выполнять хранимую процедуру на другом экземпляре SQL Server без установления отдельного подключения. Вместо этого сервер, к которому подключен клиент, принимает запрос клиента и отправляет запрос удаленному серверу от имени клиента. Удаленный сервер обрабатывает запрос и возвращает результаты исходному серверу. Этот сервер, в свою очередь, передает результаты клиенту. При настройке удаленных серверов необходимо учитывать требования обеспечения безопасности.
Если вы хотите настроить конфигурацию сервера для выполнения хранимых процедур на другом сервере и не имеет существующих конфигураций удаленного сервера, используйте связанные серверы вместо удаленных серверов. Связанные сервера поддерживают выполнение и хранимых процедур, и распределенных запросов; в то же время удаленные сервера поддерживают только хранимые процедуры.
Сведения о удаленном сервере
Удаленные сервера настраиваются парами. Чтобы настроить пару удаленных серверов, нужно настроить оба сервера таким образом, чтобы они являлись удаленными серверами друг для друга.
Большую часть времени не нужно задавать параметры конфигурации для удаленных серверов. Набор SQL Server задает значения по умолчанию как на локальных, так и на удаленных компьютерах, чтобы разрешить подключения к удаленному серверу.
Чтобы удаленный доступ к серверу работал, remote access параметр конфигурации должен быть установлен 1 как на локальных, так и на удаленных компьютерах. (Это параметр по умолчанию.) remote access контролирует входы с удалённых серверов. Этот параметр конфигурации можно сбросить с помощью хранимой процедуры Transact-SQL sp_configure или SQL Server Management Studio. Чтобы задать параметр в SQL Server Management Studio, на странице "Подключения к свойствам сервера" используйте разрешение удаленных подключений к этому серверу. Чтобы открыть страницу "Подключения свойств сервера" , в обозревателе объектов щелкните правой кнопкой мыши имя сервера и выберите "Свойства". На странице "Свойства сервера" выберите страницу "Подключения ".
С локального сервера можно отключить конфигурацию удаленного сервера, чтобы запретить доступ к этому локальному серверу пользователями на удаленном сервере, с которым он связан.
Безопасность удаленных серверов
Чтобы разрешить удалённые вызовы процедур (RPC) для удалённого сервера, необходимо настроить сопоставления имен входа на удалённом сервере и, возможно, на локальном сервере, на котором запущен экземпляр SQL Server. RPC по умолчанию отключен в SQL Server. Такая конфигурация усиливает безопасность сервера, уменьшая его подверженную атакам контактную зону. Перед использованием RPC необходимо включить эту функцию. Дополнительные сведения см. в разделе sp_configure.
Настройка удаленного сервера
Сопоставления удаленных учетных записей должны быть настроены на удаленном сервере. С помощью этих сопоставлений удаленный сервер сопоставляет входящее имя входа для RPC-подключения от указанного сервера с локальным именем входа. Сопоставления удаленных имен входа можно настроить с помощью хранимой процедуры sp_addremotelogin на удаленном сервере.
Примечание.
Доверенныйsp_remoteoption параметр не поддерживается в SQL Server.
Настройка локального сервера
Для локальных имен входа, прошедших проверку подлинности SQL Server, вам не нужно настраивать сопоставление имен входа на локальном сервере. SQL Server использует локальное имя входа и пароль для подключения к удаленному серверу. Для входов, прошедших проверку подлинности Windows, настройте на локальном сервере локальное сопоставление для входа, определяющее, какие имя входа и пароль использует экземпляр SQL Server при установлении RPC-подключения к удаленному серверу.
Для учетных записей входа, созданных с помощью проверки подлинности Windows, необходимо создать сопоставление с именем входа и паролем с помощью хранимой процедуры sp_addlinkedservlogin. Это имя пользователя для входа и пароль должны совпадать с логином и паролем, ожидаемыми удалённым сервером и созданными с помощью sp_addremotelogin.
Примечание.
По возможности используйте аутентификацию Windows.
Пример безопасности удаленного сервера
Рассмотрите следующие установки SQL Server: serverSend и serverReceive. В serverReceive настроено сопоставление входящего имени входа из serverSend, называемого Sales_Mary, с именем входа, прошедшим проверку подлинности SQL Server, в serverReceive, называемым Alice. Другая входящая учетная запись serverSend с именем Joe сопоставлена с именем входа, прошедшим проверку подлинности SQL Server, в serverReceive, с именем Joe.
В следующем примере кода Transact-SQL serverSend настраивается на выполнение вызовов RPC по отношению к serverReceive.
--Create remote server entry for RPCs
--from serverSend in serverReceive.
EXECUTE sp_addserver 'serverSend';
GO
--Create remote login mapping for login 'Sales_Mary' from serverSend
--to Alice.
EXECUTE sp_addremotelogin 'serverSend', 'Alice', 'Sales_Mary';
GO
--Create remote login mapping for login Joe from serverReceive
--to same login.
--Assumes same password for Joe in both servers.
EXECUTE sp_addremotelogin 'serverSend', 'Joe', 'Joe';
GO
В serverSendсопоставление местного имени входа создается для имени входа Sales\Mary , прошедшего проверку подлинности Windows, и имени входа Sales_Mary. Для имени входа Joeлокальное сопоставление не требуется, так как по умолчанию используются одинаковые имена входа и пароли, и serverReceive уже обладает сопоставлением для Joe.
--Create a remote server entry for RPCs from serverReceive.
EXECUTE sp_addserver 'serverReceive';
GO
--Create a local login mapping for the Windows authenticated login.
--Sales\Mary to Sales_Mary. The password should match the
--password for the login Sales_Mary in serverReceive.
EXECUTE sp_addlinkedsrvlogin 'serverReceive', false, 'Sales\Mary', 'Sales_Mary', '<password>';
GO
Просмотр свойств локального или удаленного сервера
Для просмотра атрибутов сервера для локальных или удаленных серверов можно использовать расширенную xp_msver хранимую процедуру. К этим атрибутам относятся номер версии SQL Server, тип и количество процессоров на компьютере и версия операционной системы. С локального сервера можно просматривать базы данных, файлы, имена входа и инструменты удаленного сервера. Дополнительные сведения см. в xp_msver.