Subject How/where to force a Firebird login?
Author johnehgrim
Need to force a login so can GRANT needed privleges to various users.
Current data path: UserInterface(dBase)<-->BDE<-->FirebirdODBC<-->fbclient...FbServer<-->FBdatabase.
Have been working on 'front-end' and am now near to using FB for 'live' data and thus need to start setting grants etc. from within FB. After much experimenting only way I found to 'force' a login is setting a user name in FB-ODBC setup with no password. That triggers a login. BUT, get all kinds of error messages back such as 'no such index' etc. If the user/password in FB-ODBC is left blank everything passes back and forth (which is how I've been using it and now want to restrict). However, if I manually enter user/password in FB-ODBC everything acts exactly as expected (for example: user TESTUSER password dummy with select permissions but no insert, update, drop. Firebird sends back exact error message expected when the dBase front end attempts the insert,etc.
So.... how can I force a login without firebird generating incorrect errors (such as no index when I know there are - in fact some of the code in the dBase front end, for example, queries RDB$INDICES to retrieve available indices so user can reset row viewing order - this works fine except when I force the login at the FB-ODBC layer. Can't be manually changing logins in FB-ODBC setup all the time. Without the permission setting ability from within Firebird security is an issue. Certainly don't want to have to use the dBase front end to control access to the front end - sorta defeats part of the purpose of client/server. So where as I going wrong here?
Any help would be most appreciated - am getting close to using live data, finally, if I can get this figured out.
John
PS is there an on login event where I can put a trigger (such as on insert is used to trigger generator (autoincrement behavior) - don't need that right now, but will when I eventually add subset viewing control from within Firebird.
Thanks.