Es kann passieren, dass der User im OER gelockt wird. Beim Login bekommt er dann nur die Meldung "User is locked out" und kommt nicht über das Anmeldefenster hinaus. Wenn man noch andere User im System hat, kann man sich mit diesen einloggen und den Benutzer wieder freigeben. Hat man aber nur den Admin-User, z.B. nach einer frischen Installation, kommt man hier nicht weiter.
In diesem Fall kann man sich als Repository-Benutzer auf der Datenbank anmelden und den Benutzer mit dem folgenen Script entsperren:
Zur Wiederverwendung kann der Aufruf in ein Shellscript, z.B. oerunlock.sh verpackt werden:
Der Aufruf wäre dann mit mit zu entsperrenden User als Parameter, z.B.
Es kann sein, dass die Daten noch gecached sind. In dem Fall hilft es, den WLS durchzustarten. Danach sollte das Login wieder funktionieren.
--- UPDATE 16.6.2015 -----------------------------------------------
Mit Oracle Enterprise Repository 12c funktioniert dies nicht mehr, hier sind zusätzliche Schritte notwendig.
Zunächst müssen die Diag Pages freigeschaltet werden wie in der Dokumentation beschrieben. In der
Danach lassen sich die beiden folgenden URL's aufrufen:
http://<hostname>:<port>/oer/cachediag/CacheClear?cacheName=com.flashline.enterprise.secureuser.SecUserFactory.secUsers
Die Zeile cache com.flashline.enterprise.secureuser.SecUserFactory.secUsers cleared zeigt an, dass der entsprechende Teil des Caches gelöscht wurde.
http://<hostname>:<port>/oer/cachediag/CacheDetail?cacheName=com.flashline.cmee.secureuser.CMEESecUserFactory.secUsers
Wenn hier noch der Eintrag für die id des betreffenden Accounts angezeigt wird, kann hier per Klick auf den clear Link der Cache-Eintrag gelöscht werden.
Danach sollte das Lock für den User aufgehoben und ein Login wieder möglich sein.
In diesem Fall kann man sich als Repository-Benutzer auf der Datenbank anmelden und den Benutzer mit dem folgenen Script entsperren:
1 2 3 4 5 6 7 8 9 10 11 12 | set serveroutput on DECLARE oeruserid integer; BEGIN select id into oeruserid from DEV_OER.ENTSECUSERS where username='&1'; update DEV_OER.ENTSECUSERS set ACTIVESTATUS=0 where USERNAME='&1'; dbms_output.put_line( CHR(13)||CHR(10)|| 'The ID of user ' || '&1' || ' is >>>' || oeruserid || '<<<' ); update DEV_OER.CMEEUSERS set ACTIVESTATUS=0 where ENTSECUSERID=oeruserid; commit; END; / exit |
Zur Wiederverwendung kann der Aufruf in ein Shellscript, z.B. oerunlock.sh verpackt werden:
sqlplus / as sysdba @oerunlock.sql $1
Der Aufruf wäre dann mit mit zu entsperrenden User als Parameter, z.B.
./oerunlock.sh admin
Es kann sein, dass die Daten noch gecached sind. In dem Fall hilft es, den WLS durchzustarten. Danach sollte das Login wieder funktionieren.
--- UPDATE 16.6.2015 -----------------------------------------------
Mit Oracle Enterprise Repository 12c funktioniert dies nicht mehr, hier sind zusätzliche Schritte notwendig.
Zunächst müssen die Diag Pages freigeschaltet werden wie in der Dokumentation beschrieben. In der
setStartupEnv.sh
muss hierzu der Parameter -DdiagPagesEnabled
auf true
gesetzt und der OER werden. Danach muss der Managed Server, auf dem das OER läuft, neu gestartet werden.Danach lassen sich die beiden folgenden URL's aufrufen:
http://<hostname>:<port>/oer/cachediag/CacheClear?cacheName=com.flashline.enterprise.secureuser.SecUserFactory.secUsers
Die Zeile cache com.flashline.enterprise.secureuser.SecUserFactory.secUsers cleared zeigt an, dass der entsprechende Teil des Caches gelöscht wurde.
http://<hostname>:<port>/oer/cachediag/CacheDetail?cacheName=com.flashline.cmee.secureuser.CMEESecUserFactory.secUsers
Wenn hier noch der Eintrag für die id des betreffenden Accounts angezeigt wird, kann hier per Klick auf den clear Link der Cache-Eintrag gelöscht werden.
Danach sollte das Lock für den User aufgehoben und ein Login wieder möglich sein.
Keine Kommentare:
Kommentar veröffentlichen
Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.