Subject Re: [IBO] security problem...
Author Helen Borrie
At 06:40 PM 26/02/2003 +0000, you wrote:
>Hello,
>I am new in interbase and i am using borland C++ builder..i have a
>table called company...and on a IBTable

IBTable? or IBOTable?

>on my form i can clearly see
>all columns related with this table...and i can also easily update
>the table with my application after establishing a connection.My
>problem is to make some columns read only for some users depending on
>the user name. And i have tried all combinations of sql command
>grant..
>forexample:
>
>grant select on company to user1
>grant update(companyname) on company to user1
>
>if i use this command line in IBConsole, my C++ Builder compiler says
>that,'there is a role error user1 have no read/write privilige to
>access Company table'..i cant understand what is going on? i am
>giving the select grant to user1..why compiler still tells no read
>privilige for user1?
>
>my application runs only with the command line
>
>grant all on company to user1

SELECT privileges give read access but not write access. A dataset in its
default state requires write privileges (update, insert, delete).


>but i dont want to give some privilige to user1 for instance company
>address ....what can i do?

If you are using IBTable (i.e. the IBX components) we can't help, and your
question is off-topic for this list, which is for IB Objects.

If you are using TIBOTable, you would work on the dataset itself, and list
in the FieldsReadOnly property the names of each column which the user may
not alter, and the type of read-only restrictions you want.

In Firebird and InterBase you can also define views, and use privileges to
grant rights to these, while denying rights to the tables from which the
views are extracted. You can inquire about views in more detail by asking
on the ib-support list (<mailto:ib-support-subscribe@yahoogroups.com>)

Helen