|Subject||Re: [firebird-support] Grants on views|
>> I just can't figure how to set up rights to select from a view onAnd third, in CS you might need to re-connect, otherwise the already
>> Firebird 1.5. So far I only accessed data through the owner of the
>> database (no problem there) or through another user who only had access
>> to procedures (which I managed to set up fine). But now I need a
>> view-accessing user and it just won't work.
>> master (id, value)
>> detail (id, master_id, value)
>> CREATE VIEW master_all (id, value, some_detail)
>> AS SELECT id, value, (SELECT MAX(value) FROM detail WHERE
>> master_id=m.id) FROM master m;
>> CREATE VIEW master_some (id, value, some_detail)
>> AS SELECT id, value, some_detail FROM master_all WHERE value>123;
>> GRANT SELECT ON master_all TO my_user;
>> GRANT SELECT ON master_some TO my_user;
>> GRANT SELECT ON master TO VIEW master_all;
>> GRANT SELECT ON detail TO VIEW master_all;
>> GRANT SELECT ON master_all TO VIEW master_some
>> However, whenever I try to SELECT * FROM (either view) I get an error
>> message "no permission for read/select access to table detail". What
>> other grant to I need? I definitely do not want to grant my_user access
>> to the underlying tables.
> Your provided script works for me with Firebird 2.1.2 CS. MY_USER is
> able to query both views.
> * Did you commit your GRANT statements?
> * If you did a commit, then does it help to start a new transaction in
> the session where you are running the SELECT * FROM statement?
established connection probably won't see this metadata change.
LogManager Series - Logging/Auditing Suites supporting
InterBase, Firebird, Advantage Database, MS SQL Server and