Eine wichtige Neuerung in Forms 11g ist die Möglichkeit des Anmeldens als Proxy - User, ich habe dies in Forms 11g Release 2 (11.1.2.0.0) getestet. Bei dieser Art der Anmeldung muss nur der Proxy - User im LOGON bekannt sein, die jeweiligen Applikations- End User werden sozusagen durchgereicht. Damit kann der Umstellungsaufwand von Client- nach Web- Forms reduziert werden, da die Sicherung der Anmeldung lediglich auf den Proxy - User konzentriert werden muss.
- Anlegen eines Proxy Users:
create user test_proxy identified by test_proxy;
- Freigabe des Proxy- Connects für einen End - User:
alter user scott grant connect through test_proxy;
- Test - Connect:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqlsdhNDqmvJhOxJuY9_kuaZvmibnzAeVbF7HNG2cAPnY-AWj71taiDNfGGwG9eXye5JZQtRWd5Zsg2c__ZDM0UAIM5v_jraWUR283WwWkY7-qZdyHMSjyPZUbNAvKexB0m4iBNNmfP8w/s400/Test-proxy-15-12-2011+12-33-08.png)
- Anmeldung im Forms 11gR2 - Developer:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRYvLZ9fecXxeqgUNq7dFrarR6u0aYPvcHnnumV_tzYK1Q7mZviZW32GTBO5FwnOv7kMW5-GL2wJoQeTgQrklMqpuGfSXvNoJIrLhDEhZhwoDnmGFi96i0mLX_XqFWP9Owlh79IyBSvQE/s400/proxy-forms11g-15-12-2011+12-41-55.png)
- Implizite Anmeldung im ON-LOGON - Trigger:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDx17rZIemkc2wqaHRVE8rTXSWWJqR0rkANxFTcfx02QEvxJSmc6CV5HHDK4ffe8x9N5J4F-I0ZVwA7HAQwaLMEnmBO7OpK_s0o1Tl0TVGwNZ2-ce99TvXQg9nkuIaUEFtSC38oJ0yjyA/s400/forms11g-proxy-15-12-2011+12-45-53.png)
- Nachweis des Connect - Status:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBDzckuYtAGHkVhvFaC7RsKOrPGu1Gu1G7wcif_ublcNeQob96hVyTRMRsIKOwduHyCmYEs8j65GEJv8O__qJdBLxbSbZPUvHIIH5WSGOJ4Ojbvzaw2K0pjRbN5ypMvbAFREgQIg6HsqM/s400/forms11g-conn-15-12-2011+12-52-41.png)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgp4zq4zJOTyEkgmdtt0QTJpY5y4QgLsnO3ACdqptCzaZLCxFmVb1al4UIskqvQmdsQrrcGMhEhwn4xVK7lWRaGL6tZSIDP0aqXaPL1fjD9ZrBlY6tCARmcmd4xSE9zlmHAfPQB1Oc2RE/s400/forms11g-proxy-3-15-12-2011+12-56-02.png)
D.h. man kann mit get_Application_Property(USERNAME)
den Proxy - User Account abfragen, USER
liefert nach wie vor den End - User.
Übrigens kann sich der Proxy - User selbst nicht anmelden:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaSj2zibDAlC-hQQRh-tEGq2k21EWH728Rc5VTjND2PK-eN-vpb8R2eFcizSnwMNOcKuY8yyq14WuhKfYbr48HmAuGsDVhZ7AA211PVeAGcNkE7ntZVC9_HY0En0nCvX9kExcSzYhptIQ/s400/test-proxy-2-15-12-2011+12-36-47.png)
Aus Sicherheitsgründen und besserer, nachhaltiger Wartung sollte ein End - User ohnedies als einziges Recht nur das grant create session
erhalten, eigene Objecte wie Synonyme, temporäre Tabellen, Views etc. oder gar PL/SQL - Code sollte er keinesfalls besitzen!
Jegliche Applikationsrechte sollten über Datenbank - Rollen, möglichst nach dem Prinzip der additiven Funktionserweiterung, vergeben werden.
Ich hoffe, dass dies weiter hilft.
Friedhold