When I am trying to use some of the FirebirdSql.Data.Services API (v5.6)
against a Firebird v2.5.6 database, such as;

- FirebirdSql.Data.Services.FbServerProperties.GetDatabasesInfo()
- FirebirdSql.Data.Services.FbSecurity.GetUsersDbPath()

I get the error:
"Service isc_info_svc_svr_db_info requires SYSDBA permissions. Reattach to
the Service Manager using the SYSDBA account."

This is even though I am logged in under the RDB$ADMIN ROLE.

More to the point, further, when I call
                FbUserData[] users = Globals.FbSecurity.DisplayUsers();
(NB: Where my Globals.FbSecurity returns a FirebirdSql.Data.Services.FbSecurity
object)

I am provided with the full list of users when logged in as SYSDBA, but if
logged in as another user under the RDB$ADMIN ROLE, I am returned only this
given user in FbUserData[].

This is different from how things work in gsec. There, enumeration of users
IS possible by connecting via the RDB$ADMIN role;
>gsec -user MyAdm -pass admpw -role rdb$admin -display

As I can CREATE and DROP users under a user with the RDB$ADMIN ROLE, it
seems strange that I cannot list them as well.

Is there any way of accessing the services API under a user other than
SYSDBA? More to the point, I want to create users who have administrative
function on the database (ie CREATE/DROP users) so that the SYSDBA user
(and its password) are not in use/shared. But I need to be able to
enumerate the list of users (eg FbSecurity.DisplayUsers()).

Thanks in advance,
David


[image: Inline images 1]
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

Reply via email to