Zum Hauptinhalt wechseln

Unlock/Reset a APEX-Builder Password on Oracle Autonomous Database

Wie setzt man ein vergessenes APEX-Builder Passwort in der Oracle ATP zurück?

Wichtig: In der ATP ist die Anmeldung im APEX-Builder auf Datenbankbenutzer beschränkt. Daher müssen Datenbankaccount und APEX-Builder-Account zwingend dieselbe Bezeichnung und auch dasselbe Passwort haben !! 

Im Folgenden nutze ich als Beispiel-Account “TEST” im Workspace “TEST”.

 

Man verbindet sich (z.B. per SQL Developer Web oder auch SQL Developer") in seinen ADMIN-Account der ATP.

Accounts entsperren

Schritt 1: Prüfe den Accountstatus in der Datenbank:

SELECT USERNAME, ACCOUNT_STATUS FROM DBA_USERS WHERE USERNAME = 'TEST';

# Wenn der Benutzer in der Datenbank gesperrt ist, dann entsperren mittels
ALTER USER TEST ACCOUNT UNLOCK;

Schritt 2: Prüfe den Accountstatus in APEX:

SELECT WORKSPACE_NAME, USER_NAME, IS_ADMIN, IS_APPLICATION_DEVELOPER, ACCOUNT_LOCKED, FAILED_ACCESS_ATTEMPTS FROM APEX_WORKSPACE_DEVELOPERS WHERE USER_NAME = 'TEST' ORDER BY 1;

# Ist der Benutzer in APEX gesperrt, so muss man sich mit dem gleichnamigen Datenbankaccont einloggen und dann entsperren mittels
BEGIN
	APEX_UTIL.SET_WORKSPACE('TEST');
	APEX_UTIL.UNLOCK_ACCOUNT('TEST');
	COMMIT;
END;
/

 

Passwort zurücksetzen

  1. In die APEX Administration einloggen (Workspace INTERNAL)
  2. Manage Workspaces → Manage Developers and Users 
  3. Entsprechenden Benutzer auswählen und Passwort setzen. Siehe oben, es muss zwingend dem Passwort des gleichnamigen DB-Schemas entsprechen! Wird ein neues Password vergeben, so kann dies danach auch dem DB-Schema gesetzt werden:
ALTER USER TEST IDENTFIED BY "<Password>"

Wurde das Passwort des ADMIN-Accounts für den Workspace INTERNAL vergessen, so muss man einen SR (Service Request) über den Oracle Support erstellen.

Zur Überprüfung, ob für die APEX-Accounts die “Database Account (DB) Authentication” aktiv ist, kann man folgende Befehle nutzen:

ALTER SESSION SET CURRENT_SCHEMA = APEX_XXXXXX;
SELECT NAME, VALUE, LAST_UPDATED_ON FROM APEX_INSTANCE_PARAMETERS WHERE NAME = 'APEX_BUILDER_AUTHENTICATION';

# Wenn die Query nicht "DB" zurückgibt, so kann man die Einstellung zurücksetzen:
BEGIN
	APEX_INSTANCE_ADMIN.SET_PARAMETER('APEX_BUILDER_AUTHENTICATION', 'DB');
	COMMIT;
END;
/

Kommentare

Noch keine Kommentare zu diesem Beitrag.