Allows an Adaptive Server user to be known in a database as another user.
sp_addalias loginame, name_in_db
is the master.dbo.syslogins name of the user who wants an alternate identity in the current database.
is the database user name to alias loginame to. The name must exist in both master.dbo.syslogins and in the sysusers table of the current database.
There is a user named “albert” in the database’s sysusers table and a login for a user named “victoria” in master.dbo.syslogins. This command allows “victoria” to use the current database by assuming the name “albert”:
sp_addalias victoria, albert
Executing sp_addalias maps one user to another in the current database. The mapping is shown in sysalternates, where the two users’ suids (system user IDs) are connected.
A user can be aliased to only one database user at a time.
A report on any users mapped to a specified user can be generated with sp_helpuser, giving the specified user’s name as an argument.
When a user tries to use a database, Adaptive Server checks sysusers to confirm that the user is listed there. If the user is not listed there, Adaptive Server then checks sysalternates. If the user’s suid is listed in sysalternates, mapped to a database user’s suid, Adaptive Server treats the first user as the second user while using the database.
If the user named in loginame is in the database’s sysusers table, Adaptive Server does not use the user’s alias identity, because it checks sysusers and finds the loginame before checking sysalternates, where the alias is listed.
The permission checks for sp_addalias differ based on your granular permissions settings.
Granular permissions enabled |
With granular permissions enabled, you must be a user with manage any user privilege. |
Granular permissions disabled |
With granular permissions disabled, you must be the database owner, a user with sa_role, or a user with sso_role. |
Values in event and extrainfo columns from the sysaudits table are:
Event |
Audit option |
Command or access audited |
Information in extrainfo |
---|---|---|---|
38 |
exec_procedure |
Execution of a procedure |
|
Command use
System procedures sp_addlogin, sp_adduser, sp_dropalias, sp_helpuser