1:采用windows验证的方法:

CREATE ENDPOINT InstInitiatorEndpoint STATE = STARTED AS TCP ( LISTENER_PORT = 4022 ) 
FOR SERVICE_BROKER (AUTHENTICATION = WINDOWS );
GO

在两个实例间各创建一个,采用windows验证,若两台计算机在同一个域内,则此时采用windows验证时足以的。

2:采用证书的方法验证
数据库间通信的证书等是存在于master数据库的,所以我们第一步要在master数据库创建主钥和证书,并且备份出公钥。
use master 
go --master key create master key encryption by password=\'!@#masterkey249\'; --certificate create certificate broker_private_249_cer with subject=\'for 249\', start_date=\'11/11/2009\',expiry_date=\'11/11/2111\';
backup certificate broker_private_249_cer to file=\'c:\cert\broker_public_249_cer.cer\';

Broker远端端点建立

第二步创建端点和证书绑定(此处绑定的证书是自己创建的私钥

CREATE ENDPOINT [broker_249_endpoint] 
AUTHORIZATION [sa]
STATE=STARTED
AS TCP (LISTENER_PORT = 4022, LISTENER_IP = ALL)
FOR SERVICE_BROKER (MESSAGE_FORWARDING = ENABLED
, MESSAGE_FORWARD_SIZE = 10
, AUTHENTICATION = CERTIFICATE [broker_private_249_cer]
, ENCRYPTION = DISABLED)

 

第三步就是创建登录和用户
create login broker_243_login with password=\'qsmc+12345\';
 
create user broker_243_user for login broker_243_login;(产生映射关系)

第四步:将对方备份出来的公钥拷贝到自己的服务器端,并且进行绑定

create certificate broker_public_243_cer
authorization broker_243_user from file=\'c:\cert\broker_public_243_cer.cer\';

将刚刚创建的用户进行绑定,并且创建一个certificate (授权)

第五步:赋予刚创建用户连接端点的权利
grant connect on endpoint::broker_249_endpoint to broker_243_login;

切记一点:一个数据库实例只能够有一个service broker的端点:endpoint,当我们建立已经有endpoint的时候,需要与别的数据库进行端点间的访问,我们只用从四散不开始就可以了。

这就创建完成了。恩  还挺有成就感的

版权声明:本文为shengdimaya原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/shengdimaya/p/5403952.html