Hi,
I have a fairly simple Service Broker set up to send messages between 2 DBs within the same instance. Since there is no cross-networking here, I did not set up any routes. So I have a SendQ associated with SendService in DB1 and a ReceiveQ associated with ReceiveService in DB2. Both are on Server S1.
I've set TRUSTWORTH on both DBs.
ALTER DATABASE <DBNAME> SET TRUSTWORTHY ON
Since I'm using Integrated Windows security, I also granted send permission to public
GRANT SEND ON SERVICE::ReceiveService TO [public];
However when I send out a message, it doesn't go to either the SendQ or ReceiveQ. Instead it sits in the sys.transmission_queue with the following message
An exception occurred while enqueueing a message in the target queue. Error: 916, State: 3. The server principal "S-1-9-3-4070899528-1141234901-971043712-2725434662." is not able to access the database "DB2" under the current security context.
Can anyone please help me with what I might be doing wrong or missing here? Thanks,
I have a fairly simple Service Broker set up to send messages between 2 DBs within the same instance. Since there is no cross-networking here, I did not set up any routes. So I have a SendQ associated with SendService in DB1 and a ReceiveQ associated with ReceiveService in DB2. Both are on Server S1.
I've set TRUSTWORTH on both DBs.
ALTER DATABASE <DBNAME> SET TRUSTWORTHY ON
Since I'm using Integrated Windows security, I also granted send permission to public
GRANT SEND ON SERVICE::ReceiveService TO [public];
However when I send out a message, it doesn't go to either the SendQ or ReceiveQ. Instead it sits in the sys.transmission_queue with the following message
An exception occurred while enqueueing a message in the target queue. Error: 916, State: 3. The server principal "S-1-9-3-4070899528-1141234901-971043712-2725434662." is not able to access the database "DB2" under the current security context.
Can anyone please help me with what I might be doing wrong or missing here? Thanks,