User's Manual

Chapter 10. SQL Remote Administration
The
userid
is a user with CONNECT permissions on the current database.
For example, the following statement grants PUBLISH permissions to user
S_Beaulieu:
exec sp_publisher ’S_Beaulieu’
go
The database is set to have no publisher by executing the sp_publisher
procedure with no argument:
exec sp_publisher
go
Notes on PUBLISH
permissions
To see the publisher user ID for an Adaptive Server Anywhere database
outside Sybase Central, use the CURRENT PUBLISHER special
constant. The following statement retrieves the publisher user ID:
SELECT CURRENT PUBLISHER
To see the publisher user ID for an Adaptive Server Enterprise database,
use the following statement:
SELECT name
FROM sysusers
WHERE uid = ( SELECT user_id
FROM sr_publisher )
go
If PUBLISH permissions is granted to a user ID with GROUP
permissions, it is not inherited by members of the group.
PUBLISH permissions carry no authority except to identify the publisher
in outgoing messages.
For messages sent from the current database to be received and processed
by a recipient, the publisher user ID must have REMOTE or
CONSOLIDATE permissions on the receiving database.
The publisher user ID for a database cannot also have REMOTE or
CONSOLIDATE permissions on that database. This would identify them
as both the sender of outgoing messages and a recipient of such messages.
Changing the user ID of a publisher at a remote database will cause
serious problems for any subscriptions that database is involved in,
including loss of information. You should not change a remote database
publisher user ID unless you are prepared to resynchronize the remote
user from scratch.
Changing the user ID of a publisher at a consolidated database while a
SQL Remote setup is operating will cause serious problems, including
203