If you have required privileges, it’s possible to connect as a user account without knowing or changing his password. This is called proxy connection. To authorize a user account to connect using a proxy account, use the GRANT CONNECT THROUGH clause of the ALTER USER statement.
Let’s set say we don’t know password of SCOTT user. I connect with my dba account and set “GOKHAN” user as a proxy for SCOTT:
|
1 |
ALTER USER scott GRANT CONNECT THROUGH gokhan; |
Now we can connect using the GOKHAN proxy user:
|
1 2 3 4 5 6 7 8 9 |
CONNECT gokhan[scott] Enter password: <i>gokhan_password</i> Connected. SELECT USER FROM DUAL; USER ------------------------------ SCOTT |
Use the REVOKE CONNECT THROUGH clause of ALTER USER to disallow a proxy connection:
|
1 2 3 4 5 6 |
ALTER USER scott REVOKE CONNECT THROUGH gokhan; CONNECT gokhan[scott] Enter password: ERROR: ORA-28150: proxy not authorized to connect as client |
4 Responses to “Connect Through a Proxy User Account”


Great and helpful article Gokhan. Thanks a lot for your efforts.
Balwan, you are welcome! I’m happy to see it helps.
Hello,
What are the dictionary tables related to proxy privileges ?
How I find witch user have access to connect (as another user) using proxy?
Best Regards,
Matheus
Hello,
many thanks,
I got the error ORA-28150 trying Oracle WFS and
solved this with your tip.
Best Regards,
Friedhold