Kbase P107795: SELECT statement on VIEW fails with [JDBC OpenEdge Driver]:Access denied (Authorization failed) (751
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  9/21/2009 |
|
Status: Verified
SYMPTOM(s):
Logged in as SYSPROGRESS
CREATE VIEW usr1.table AS SELECT fld1, fld2 FROM pub.table;
GRANT SELECT ON usr1.table TO usr2;
Logged in as usr2;
SELECT * FROM usr1.table;
=== SQL Exception ===
SQLState=HY000
ErrorCode=-20228
[JDBC OpenEdge Driver]:Access denied (Authorization failed) (7512)
FACT(s) (Environment):
All Supported Operating Systems
OpenEdge 10.x
CAUSE:
The owner of the view did not have SELECT permissions to the table(s) on which the VIEW was based.
FIX:
To allow access to a VIEW owned by a given user, that user must have SELECT permission on all the tables referenced in the CREATE view statement that created the view even if sysprogress was the user who created that view. To achieve this:
1. Log in as sysprogress.
2. Grant SELECT rights on the VIEW underlying table(s) to the owner of the VIEW:
GRANT SELECT ON pub.table TO usr1;
3. Commit the changes:
COMMIT;