Nasıl yapılır: Tam iletişim güvenlik (Transact-SQL) hedef Hizmetleri Yapılandırma
SQL Server uzak hizmet bağlaması başlatan hizmeti barındıran veritabanı içinde bulunduğu bir hizmet için herhangi bir görüşmesi iletişim güvenliğini kullanır.Daha sonra hedef hizmet barındıran veritabanı iletişim kutusunda oluşturduğunuz kullanıcı için karşılık gelen bir kullanıcı içerdiğinde, tam güvenlik iletişim kutusunu kullanır.
Hedef hizmet iletişim güvenliği kullanan emin olmak için bir kullanıcı olarak oturum başlatma hizmeti için oluşturun.Başlatan her hizmet için bir kullanıcı oluşturmak ve kurmak sertifika başlatan kullanıcının.Hedef hizmet uzak hizmet bağlaması kullandığına dikkat edin.
Bir hedef yapılandırmak için hizmet tam iletişim güvenliği için
Bir oturumu olmayan bir kullanıcı oluşturun.
Kullanıcı için bir sertifika oluşturun.
Not
Ana anahtar ile sertifika şifrelenmiş olmalıdır.Daha fazla bilgi için bkz: ANA anahtar (Transact-SQL) oluştur.
Bu kullanıcı hedef hizmet sahibi olun.
sertifika dosyaya yedekler.
Güvenlik NotuSadece yedeklemek bu kullanıcı için sertifika.Yedeklenmesi veya dağıtmak ile ilişkili özel anahtar sertifika.
Hedef hizmetin kullandığı sırasından iletileri almak hedef hizmet kullanıcı izni verin.
Sertifika ve başlatma adı hizmet uzak veritabanı için veritabanı yöneticisine.
Not
İçin SQL Server tam iletişim güvenliği kullanmak için sertifika uzak veritabanı ve kullanıcı için yüklü olması gerekir sertifika uzak hizmet bağlaması için hedef hizmeti belirtilen kullanıcı olmalıdır
Güvenilen bir sertifika uzak veritabanında bir kullanıcı için elde kaynak.Genellikle, bu sertifikayı şifrelenmiş e-posta yoluyla veya disket gibi fiziksel ortam üzerinde sertifika aktarma gönderme içerir.
Güvenlik NotuYalnızca güvenilir kaynaklardan gelen sertifikaları yükleyin.
Bir oturumu olmayan bir kullanıcı oluşturun.
Yüklemek sertifika başlatan hizmet.Önceki adımda oluşturduğunuz kullanıcının sahibi olduğu sertifika.
Başlatan hizmet için bir oturum olmadan bir kullanıcı oluşturmak sertifika.
Hedef hizmet iletileri göndermek başlatan kullanıcı izni verin.
Örnek
USE AdventureWorks2008R2 ;
GO
--------------------------------------------------------------------
-- The first part of the script configures security for the local user.
-- The script creates a user in this database, creates a certificate
-- for the user, writes the certificate to the file system, and
-- grants permissions to the user. Since this service is a target
-- service, no remote service binding is necessary.
-- Create a user without a login. For convenience,
-- the name of the user is based on the name of the
-- the remote service.
CREATE USER [SupplierOrdersUser]
WITHOUT LOGIN;
GO
-- Create a certificate for the initiating service
-- to use to send messages to the target service.
CREATE CERTIFICATE [SupplierOrdersCertificate]
AUTHORIZATION [SupplierOrdersUser]
WITH SUBJECT = 'Certificate for the SupplierOrders service user.';
GO
-- Dump the certificate. Provide the certificate file
-- to the administrator for the database that hosts
-- the other service.
BACKUP CERTIFICATE [SupplierOrdersCertificate]
TO FILE = 'C:\Certificates\SupplierOrders.cer';
GO
-- Make this user the owner of the target service.
ALTER AUTHORIZATION ON SERVICE::SupplierOrders TO [SupplierOrdersUser];
GO
-- Grant receive on the orders queue to the local user.
GRANT RECEIVE ON SupplierOrdersQueue
TO [SupplierOrdersUser];
GO
---------------------------------------------------------------
-- The second part of the script configures security in this
-- database for the remote service. This consists of creating
-- a user in this database, loading the certificate for the remote
-- service, and granting permissions for the user.
-- Create a user without a login.
CREATE USER [OrderPartsUser]
WITHOUT LOGIN;
GO
-- Install a certificate for the initiating user.
-- The certificate is provided by the owner of the
-- initiating service.
CREATE CERTIFICATE [OrderPartsCertificate]
AUTHORIZATION [OrderPartsUser]
FROM FILE='C:\Certificates\OrderParts.cer';
GO
-- Grant send on the target service to the user for the
-- initating service.
GRANT SEND ON SERVICE::[SupplierOrders]
TO [OrderPartsUser];
GO
Ayrıca bkz.