Будут ли какие-либо нежелательные эффекты, если я отключу все учетные записи администратора Oracle (sys, sysman ..) и использую новые учетные записи администратора? Боюсь, что сам Oracle может использовать такие учетные записи администратора по умолчанию для обработки?
Спасибо.
Вы не можете заблокировать / отключить учетные записи SYSDBA (например, SYS) из-за того, что они не проходят аутентификацию в базе данных таким же образом. Вот небольшой тест, который я провел на обычном пользователе, которому я предоставил SYSDBA, а затем заблокировал учетную запись. Пользователь по-прежнему может войти как SYSDBA, но не как обычный пользователь:
C:\>sqlplus test@testdb as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Apr 26 10:14:42 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> quit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
C:\>sqlplus test@testdb
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Apr 26 10:23:43 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter password:
ERROR:
ORA-28000: the account is locked
Enter user-name:
C:\>
Конечно, если я могу войти в систему как пользователь SYSDBA, то я могу просто разблокировать свою учетную запись и снова войти в нее как обычный пользователь.
Я не уверен, зачем вам это нужно. Это не похоже на хорошую идею. если ты мог фактически заблокируйте учетные записи SYSDBA, вы можете сделать вашу базу данных недоступной. За исключением SYS и SYSTEM, все учетные записи, созданные Oracle при создании базы данных, в любом случае заблокированы по умолчанию. Что вы пытаетесь достичь?
РЕДАКТИРОВАТЬ:
Вот единственный сценарий, в котором SYSDBA может быть заблокирован:
Этот сценарий означает, что вы все равно сильно облажались. Также предполагается, что вы не можете изменить файл sqlnet.ora, в котором определен параметр authentication_services, иначе вы можете вернуть его в NTS, чтобы разрешить аутентификацию ОС (предполагается Windows).
Вы можете запретить удаленный вход в учетные записи sysdba, установив для REMOTE_LOGIN_PASSWORDFILE значение none. Пользователи sysdba могут аутентифицироваться с помощью «connect / as sysdba» только при входе в компьютер, на котором работает база данных.
Но вам все равно придется ответить, почему вы хотите это сделать. И что вы подразумеваете под нежелательными эффектами.