Ich verwende Oracle für die Entwicklung. Das Kennwort für ein Bootstrap-Konto, das ich immer zum Neuerstellen meiner Datenbank verwende, ist abgelaufen.
Wie deaktiviere ich den Kennwortablauf für diesen Benutzer (und alle anderen Benutzer) dauerhaft?
Ich verwende Oracle 11g, dessen Kennwörter standardmäßig ablaufen.
Antworten:
Um die Kennwortablaufrichtlinie für ein bestimmtes Benutzerprofil in Oracle zu ändern, überprüfen Sie zunächst, welches Profil der Benutzer verwendet:
Dann können Sie das Limit so ändern, dass es niemals abläuft, indem Sie:
Wenn Sie zuvor das Limit überprüfen möchten, können Sie Folgendes verwenden:
quelle
select username,expiry_date,account_status from dba_users;
um den account_status anzuzeigen. Für diejenigen, deren Konto abläuft, müssen Sie das Kennwort möglicherweise zum letzten Mal einmal zurücksetzen.ALTER USER Bob PROFILE MyNonExpiringProfile;
.Für die Entwicklung können Sie die Kennwortrichtlinie deaktivieren, wenn kein anderes Profil festgelegt wurde (dh den Kennwortablauf in der Standardeinstellung deaktivieren):
Setzen Sie dann das Passwort zurück und entsperren Sie das Benutzerkonto. Es sollte nie wieder ablaufen:
quelle
Wie in den anderen Antworten angegeben, führt das entsprechende Ändern des Benutzerprofils (z. B. des 'DEFAULT'-Profils) dazu, dass Kennwörter, die einmal festgelegt wurden, niemals ablaufen.
Ein Kommentator weist jedoch darauf hin, dass Kennwörter, die unter den alten Werten des Profils festgelegt wurden, möglicherweise bereits abgelaufen sind und das Konto (wenn nach der angegebenen Nachfrist des Profils) gesperrt wurde.
Die Lösung für abgelaufene Kennwörter mit gesperrten Konten (wie in einem Antwortkommentar angegeben) besteht darin, eine Version des Befehls ALTER USER zu verwenden:
Der Befehl zum Entsperren funktioniert jedoch nur für Konten, bei denen das Konto tatsächlich gesperrt ist, nicht jedoch für Konten, die sich in der Nachfrist befinden, dh bei denen das Kennwort abgelaufen ist, das Konto jedoch noch nicht gesperrt ist. Für diese Konten muss das Kennwort mit einer anderen Version des Befehls ALTER USER zurückgesetzt werden:
Im Folgenden finden Sie ein kleines SQL * Plus-Skript, mit dem ein privilegierter Benutzer (z. B. Benutzer 'SYS') das Kennwort eines Benutzers auf den aktuell in der Datenbank gespeicherten Hashwert zurücksetzen kann.
BEARBEITEN: Ältere Versionen von Oracle speichern das Kennwort oder den Kennwort-Hash in der pword-Spalte, neuere Versionen von Oracle speichern den Kennwort-Hash in der Spare4-Spalte. Das folgende Skript wurde geändert, um die Spalten "pword" und "spare4" zu sammeln, aber um die Spalte "spare4" zum Zurücksetzen des Benutzerkontos zu verwenden. nach Bedarf ändern.
quelle
Ich glaube, dass das Kennwortablaufverhalten standardmäßig niemals abläuft. Sie können jedoch ein Profil für Ihren Entwicklerbenutzer einrichten und das festlegen
PASSWORD_LIFE_TIME
. Weitere Informationen finden Sie im orafaq . Sie können sehen , hier ein Beispiel für eine Person Perspektive und Nutzung.quelle
Ich werde vorschlagen, dass es keine gute Idee ist, den Ablauf des Passworts zu deaktivieren, da dies zu möglichen Bedrohungen für die Vertraulichkeit, Integrität und Verfügbarkeit von Daten führen kann.
Wenn Sie möchten.
Wenn Sie über einen ordnungsgemäßen Zugriff verfügen, verwenden Sie folgendes SQL
Dies sollte Ihnen ein solches Ergebnis liefern.
Jetzt können Sie Pedro Carriços Antwort https://stackoverflow.com/a/6777079/2432468 verwenden
quelle