Chapter 11. Administering SQL Remote for AdaptiveSer ver
Anywhere
The Message Agent and replication security
Inthe tutorials in the previous chapter, the Message Agent was run using a
userID with DBA permissions. Theoperations in the messages are carried
outfrom the user ID specified in the Message Agent connection string; by
usingthe user ID DBA, you can be sure that the user has permissions to
makeall the changes.
Inmany situations, distributing the DBA user ID and password to all remote
databaseusers is an unacceptable practice for security and data privacy
reasons. SQL Remote provides a solution that enables the Message Agent to
havefull access to the database in order to make any changes contained in
themessages without creating security problems.
Aspecial permission, REMOTEDBA, has the following properties:
Nodistinct permissions when not connected from the Message
Agent A user ID granted REMOTEDBA authority has no extra
privilegeson any connection apart from the Message Agent. Therefore,
evenif the user ID and password for a REMOTE DBA user is widely
distributed,there is no security problem. Aslong as the user ID has no
permissionsbeyond CONNECT granted on the database, no one can use
thisuser ID to access data in the database.
FullDBA permissions from the Message Agent Whenconnecting
fromthe Message Agent, a user ID with REMOTE DBA authority has
fullDBA permissions on the database.
UsingREMOTE DBA
permission A suggested practice is to grant REMOTEDBA authority at the
consolidateddatabase to the publisher and to each remote user. Whenthe
remotedatabase is extracted, the remote user becomes the publisher of the
remotedatabase, and is granted the same permissions they were granted on
theconsolidated database, including the REMOTE DBA authority which
enablesthem to use this user ID in the Message Agent connection string.
Adoptingthis procedure means that there are no extra user IDs to administer,
andeach remote user needs to know only one user ID to connect to the
database,whether from the Message Agent (which then has full DBA
authority)or from any other client application (in which case the REMOTE
DBAauthority grants them no extra permissions).
GrantingREMOTE DBA
permission Youcan grant REMOTE DBA permissions to a user ID named dbremote as
follows:
GRANT REMOTE DBA
TO dbremote
IDENTIFIED BY dbremote
243