When you create a join index, you have the privileges necessary to perform operations on the join. You must explicitly grant permissions on the underlying “join virtual table” to other users in your group, however, before they can manipulate tables in the join. These privileges must be granted on the join virtual table in addition to the appropriate privileges on the tables participating in the join.
Before granting privileges on the join virtual table, you must first determine its name, which is stored in a system table. If the name of the join index is emp_location, then the following query returns the name of the join virtual table:
select table_name from sys.systable where table_id in (select jvt_id from sys.sysiqjoinindex where joinindex_name='emp_location')
Use the name of the join virtual table jvt_name returned by this query to grant permissions on the join virtual table:
grant all on jvt_name to user_names
After you grant the necessary privileges on the underlying join virtual table, other users in your group can perform operations on the tables in the join index without receiving permission errors.