WEB开发网
开发学院数据库MSSQL Server SQLServer实战经验分享--ServiceBroker安全配置... 阅读

SQLServer实战经验分享--ServiceBroker安全配置和使用示例

 2009-02-12 10:23:49 来源:WEB开发网   
核心提示: 实现目标处理服务CREATESERVICE[http://Samples/SQL/ServiceBroker/msgOperationProcessService]ONQUEUEdbo.msgOperationProcessQueue([http://Samples/SQL/Service

实现目标处理服务

CREATESERVICE[http://Samples/SQL/ServiceBroker/msgOperationProcessService]
ONQUEUEdbo.msgOperationProcessQueue
([http://Samples/SQL/ServiceBroker/msgOperationContract])
GO

2.实现ServiceBroker安全配置

在一台数据库服务器上的不同数据库之间的安全配置比较简单,默认情况下数据库之间是没有外部访问权限的,要实现你就需要在本地服务器上开启模拟上下文的数据库模块,即在数据库中设置 ALTER DATABASE database_name SET TRUSTWORTHY ON 来实现互相访问的目的。

这里我们需要实现一种更灵活,更安全的配置方式,那就是基于证书的安全配置。

初始方

创建拥有服务的用户

CREATEUSERmsgOperationInitServiceUserWITHOUTLOGIN;
ALTERAUTHORIZATIONON
SERVICE::[http://Samples/SQL/ServiceBroker/msgOperationInitService]
TO
msgOperationInitServiceUser;

创建与该用户关联的私钥证书

CREATECERTIFICATEmsgOperactionInitServiceCertPrivAUTHORIZATIONmsgOperationInitServiceUser
WITHSUBJECT='ForMsgOperactionInitService',
START_DATE='01/01/2009',
EXPIRY_DATE='01/01/2100';

将公钥证书备份到文件以供目标方服务使用

BACKUPCERTIFICATEmsgOperactionInitServiceCertPriv
  TOFILE='X:**msgOperactionInitServiceCertPub.cer';

创建调用目标服务的用户

CREATEUSERmsgOperationProcessServiceUserWITHOUTLOGIN;

导入目标服务的证书并把刚才创建的用户设为所有者

上一页  1 2 3 4 5 6 7  下一页

Tags:SQLServer 实战 经验

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接