Какие нестандартные настройки вы обычно применяете (или рассматриваете возможность применения) при установке Oracle Database?
Мне нужны не аппаратно-зависимые настройки (например, выделение памяти) или расположение файлов, а более общие элементы. Точно так же все, что является частным требованием для конкретного приложения, а не общеприменимым, на самом деле бесполезно.
Вы отделяете схемы кода / API (владельцев PL / SQL) от схем данных (владельцев таблиц)? Используете ли вы роли по умолчанию или не по умолчанию, и если последнее, защищаете ли вы роль паролем?
Меня также интересует, есть ли где-нибудь место, где вы отмените ОТЗЫВ GRANT, который установлен по умолчанию. Это может зависеть от версии, поскольку 11g кажется более заблокированным для установки по умолчанию.
Это те, которые я использовал в недавней настройке. Я хотел бы знать, пропустил ли я что-нибудь или где вы не согласны (и почему).
Параметры базы данных
Набор символов - AL32UTF8
Профили
Я создал измененную функцию проверки пароля, которая использовала таблицу словаря вершины (FLOWS_030000.wwv_flow_dictionary $) в качестве дополнительной проверки для предотвращения использования простых паролей.
Логины для разработчиков
CREATE PROFILE profile_dev LIMIT FAILED_LOGIN_ATTEMPTS 8
PASSWORD_LIFE_TIME 32 PASSWORD_REUSE_TIME 366 PASSWORD_REUSE_MAX 12
PASSWORD_LOCK_TIME 6 PASSWORD_GRACE_TIME 8
PASSWORD_VERIFY_FUNCTION verify_function_11g
SESSIONS_PER_USER unlimited CPU_PER_SESSION unlimited
CPU_PER_CALL unlimited PRIVATE_SGA unlimited
CONNECT_TIME 1080 IDLE_TIME 180
LOGICAL_READS_PER_SESSION unlimited LOGICAL_READS_PER_CALL unlimited;
Вход в приложение
CREATE PROFILE profile_app LIMIT FAILED_LOGIN_ATTEMPTS 3
PASSWORD_LIFE_TIME 999 PASSWORD_REUSE_TIME 999 PASSWORD_REUSE_MAX 1
PASSWORD_LOCK_TIME 999 PASSWORD_GRACE_TIME 999
PASSWORD_VERIFY_FUNCTION verify_function_11g
SESSIONS_PER_USER unlimited CPU_PER_SESSION unlimited
CPU_PER_CALL unlimited PRIVATE_SGA unlimited
CONNECT_TIME unlimited IDLE_TIME unlimited
LOGICAL_READS_PER_SESSION unlimited LOGICAL_READS_PER_CALL unlimited;
Привилегии для стандартной учетной записи владельца схемы
CREATE CLUSTER
CREATE TYPE
CREATE TABLE
CREATE VIEW
CREATE PROCEDURE
CREATE JOB
CREATE MATERIALIZED VIEW
CREATE SEQUENCE
CREATE SYNONYM
CREATE TRIGGER
Вот кое-что, с чем я однажды столкнулся, и это пример передового опыта кого-то другого по старой версии Oracle:
Аудиторская проверка - выключено, если клиент не требует его включения.
Отделение схемы кода от схемы данных: Нет, но определенно изолируйте схему кода и данных от пользователей, где они получают доступ к базовым таблицам / коду через роли или гранты.