Subject RE: [ib-support] Re: Interbase Security
Author Bill Meaney

Your almost there. You just need to take Dan's idea a step further.
Instead of verifying just the server name, verify the full connection
string. This assumes that you know what the full path to the gdb is at
installation time and can store it in the database. When your application
starts have it compare the full dbConnection.Params.Values['ServerName'] to
what is stored in your database. If someone were to copy the database to
another path on the same server the dbConnection.Params.Values['ServerName']
would have to be different and would fail verification. An added measure
might be to write a simple encrypt/decrypt routine for storing the gdb path
in the database.


Bill Meaney

> Thanks to everybody for your mails and all your help. I
> really, really apreciated.
> Your reply works fine if you're trying to prevent users in
> connecting to different database servers. Now, the thing is
> how to prevent users to work with different instances of the
> same database on one server. You can make Exact instances of
> a database (with the same server name, users, passwords,
> roles... and everything else) .My app is licensed on a per
> item basis. That is, you pay according to the number of
> items the app can handle. So, what I'm trying to do is
> prevent a user that purchases a 10 item license to create 3
> different instances of the same database and end up handling
> 10 x 3 = 30 items. The issue is how to tie up the license to
> a database instance to prevent illegal use of the software.
> i dont know how to do this....please help me!
> thaaaanks in advance.