Hinweis:

Schrittweise Kennwort-Rollover in Oracle Database auf Oracle Cloud Infrastructure einrichten

Einführung

Das schrittweise Kennwort-Rollover ist ein Feature in Oracle Database, mit dem Sie das Kennwort eines Datenbankbenutzers ändern können, ohne Anwendungen zu unterbrechen, die derzeit das alte Kennwort verwenden. Bei einem schrittweisen Kennwort-Rollover bleibt das alte Kennwort für einen bestimmten Zeitraum gültig, nach dem es nicht mehr akzeptiert wird, d.h. zwei verschiedene Kennwörter sind für einen Benutzer vorübergehend zulässig. Dadurch kann das neue Passwort ohne Ausfallzeit an alle Clientanwendungen weitergegeben werden. Der Rollover-Zeitraum für das Kennwort beginnt mit der Änderung des Kennworts.

Die schrittweise Kennwort-Rollover-Funktion wird als Benutzerprofil-Kennwortressourceneinstellung (Kennwortressourcenlimit) PASSWORD_ROLLOVER_TIME angegeben, die auf die Benutzersessions angewendet wird. Benutzerprofile in Oracle Database sind eine Reihe von Limits für Datenbankressourcen - Konfiguration auf Benutzerebene. Mit dem Benutzerprofil können Sie die Ressourcenmenge regulieren, die von jedem Datenbankbenutzer verwendet wird. Eine Datenbank wird mit dem Standardprofil DEFAULT erstellt, das allen Benutzern der Datenbank zugewiesen wird, sofern nicht anders angegeben. Sie können das Standardprofil verwenden oder ein neues Profil erstellen, um Ressourcenlimits für Kennwörter hinzuzufügen.

In diesem Tutorial konzentrieren wir uns nur auf PASSWORD_ROLLOVER_TIME und durchlaufen eine Schritt-für-Schritt-Anleitung zur Verwendung dieses Features in einem Oracle Autonomous Transaction Processing-(ATP-)Datenbankservice. Zu diesem Zweck verwenden wir das Oracle SQL Developer Web-Tool von der OCI-Konsole.

Es gibt andere Dinge, die man wissen sollte, bevor man die Passwort-Rollover-Funktion verwendet.

Ziele

Voraussetzungen

Aufgabe 1: Standardprofil in Verfügbarkeitsprüfung prüfen

Das Standardprofil und der Wert der Ressource PASSWORD_ROLLOVER_TIME werden in einer Verfügbarkeitsprüfung angezeigt.

Öffnen Sie das Oracle SQL Developer Web-Tool, und führen Sie die folgende SQL-Abfrage aus, um die Limits des DEFAULT-Profils zu prüfen.

select * from dba_profiles where profile = 'DEFAULT';

Bild mit Abfrageergebnis.

In der folgenden Abbildung wird dargestellt, dass das DEFAULT-Profil viele Ressourcen enthält und der Grenzwert (Wert) von PASSWORD_ROLLOVER_TIME 0 ist. Das bedeutet, dass der schrittweise Kennwort-Rollover für das DEFAULT-Profil deaktiviert ist. Der Ressourcengrenzwert im Profil DEFAULT kann geändert werden. Wir erstellen jedoch ein neues Profil, um dieses Feature zu demonstrieren.

Aufgabe 2: Neues Benutzerprofil erstellen

Erstellen Sie ein Profil, bei dem FAILED_LOGIN_ATTEMPTS auf 10 und PASSWORD_ROLLOVER_TIME auf 1 Stunde (1/24 Tag) gesetzt ist.

  1. Führen Sie die folgende SQL-Abfrage aus, um ein Profil mit dem Namen PW_ROLLOVER_TIME_1HR_PROF zu erstellen.

    create profile PW_ROLLOVER_TIME_1HR_PROF limit FAILED_LOGIN_ATTEMPTS 10 PASSWORD_ROLLOVER_TIME 1/24;
    

    Bild mit Abfrageergebnis.

  2. Führen Sie die folgende SQL-Abfrage aus, um den Grenzwert von PASSWORD_ROLLOVER_TIME zu prüfen.

    select * from dba_profiles where profile = 'PW_ROLLOVER_TIME_1HR_PROF';
    

    Bild mit Abfrageergebnis.

    Der Ressourcengrenzwert für PASSWORD_ROLLOVER_TIME ist 0.416 (1/24 Tage), und nicht erfolgreiche Anmeldeversuche werden auf 10 gesetzt.

Aufgabe 3: Benutzeraccount erstellen

Wir erstellen einen Benutzeraccount und weisen dem Benutzer das erstellte Profil PW_ROLLOVER_TIME_1HR_PROF zu.

  1. Führen Sie die folgende SQL-Abfrage aus, um einen Benutzer mit dem Namen db_test zu erstellen.

    create user db_test identified by "Pass_Rollover@2023" profile = 'PW_ROLLOVER_TIME_1HR_PROF';
    

    Bild mit Abfrageergebnis.

    Ein vorhandener Benutzer kann mit dem folgenden Befehl auch an ein Profil angehängt werden.

    alter user <user_name> profile <profile_name>;
    
  2. Führen Sie die folgende SQL-Abfrage aus, um die Berechtigung CREATE SESSION zum Testen der Datenbankverbindung zu erteilen.

    GRANT CREATE SESSION TO DB_TEST;
    

    Bild mit Abfrageergebnis.

  3. Der Accountstatus wird mit der folgenden SQL-Abfrage geprüft.

    select user_name, profile, account_status from dba_users where user_name = 'DB_TEST';
    

    Bild mit Abfrageergebnis.

Aufgabe 4: Benutzerkennwort ändern

Ändern Sie das Benutzerkennwort, und zeigen Sie den Accountstatus an.

  1. Führen Sie die folgende SQL-Abfrage aus, um das Benutzerkennwort zu ändern.

    alter user DB_TEST identified by "New_Pass@2023";
    
  2. Prüfen Sie den Accountstatus.

    Bild mit Abfrageergebnis.

    Der Accountstatus zeigt jetzt IN ROLLOVER an. Das bedeutet, dass sich der DB_TEST-Benutzeraccount derzeit im Rollover befindet. Sowohl das alte als auch das neue Kennwort können 1 Stunde lang mit dem Benutzer verbunden werden. Nach 1 Stunde wird das alte Kennwort nicht mehr akzeptiert, und Verbindungen können nur mit einem neuen Kennwort hergestellt werden.

Aufgabe 5: Rollover-Periode zwangsweise ablaufen lassen

Mit der Funktion "Kennwort-Rollover" können wir das Rollover zwangsweise ablaufen lassen, wenn das alte Kennwort nicht für die verbleibende Rollover-Periode gültig sein soll.

  1. Führen Sie die folgende SQL-Abfrage aus, um das Kennwort-Rollover für den Benutzer ablaufen zu lassen.

    alter user DB_TEST expire password rollover period;
    

    Bild mit Abfrageergebnis.

  2. Prüfen Sie den Accountstatus.

    Bild mit Abfrageergebnis.

    Der Accountstatus wurde in OPEN geändert, und eine Verbindung zur Datenbank kann nicht mehr mit dem alten Kennwort hergestellt werden. Wenn ein Benutzer sich also im Rollover befindet, z.B. neue und alte Kennwörter funktionsfähig sind, lautet der Accountstatus in der Tabelle DBA_USERS OPEN & IN ROLLOVER, und der Accountstatus ändert sich in OPEN, nachdem der Rollover-Zeitraum abgelaufen ist.

Danksagungen

Weitere Lernressourcen

Lernen Sie andere Übungen auf docs.oracle.com/learn kennen, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube Channel zu. Außerdem können Sie education.oracle.com/learning-explorer besuchen, um Oracle Learning Explorer zu werden.

Die Produktdokumentation finden Sie im Oracle Help Center.