- データベース管理者のための主要20c新機能の学習
- データベース管理者のための主要20c新機能の学習
- セキュリティ・ソリューション
- セキュリティ
- セキュリティ技術導入ガイド(STIG)コンプライアンスのための事前に定義された統合監査ポリシー
- 演習: STIGコンプライアンスのための事前に定義された統合監査ポリシーの使用
演習: STIGコンプライアンスのための事前に定義された統合監査ポリシーの使用
この演習では、事前に定義された統合監査ポリシーを使用して、セキュリティ技術導入ガイド(STIG)の監査要件を実装する方法を示します。
- 新しい演習を開始する前に、演習の環境の推奨事項を参照してください。
SYSTEM
としてPDB20
に接続し、実装されている事前に定義された統合監査ポリシーを確認します。$ sqlplus system@PDB20 Enter password: password Connected. SQL> SELECT DISTINCT policy_name FROM audit_unified_policies ORDER BY 1; POLICY_NAME -------------------------------------------------------------------------------- ORA_ACCOUNT_MGMT ORA_ALL_TOPLEVEL_ACTIONS ORA_CIS_RECOMMENDATIONS ORA_DATABASE_PARAMETER ORA_DV_AUDPOL ORA_DV_AUDPOL2 ORA_LOGON_FAILURES ORA_LOGON_LOGOFF ORA_RAS_POLICY_MGMT ORA_RAS_SESSION_MGMT ORA_SECURECONFIG ORA_STIG_RECOMMENDATIONS 12 rows selected. SQL>
3つの新しい事前に定義された統合監査ポリシーが実装されていることに注目します。
- これらのポリシーは、STIGコンプライアンスを満たすために有効になっていますか。
SQL> SELECT * FROM audit_unified_enabled_policies WHERE policy_name IN ('ORA_ALL_TOPLEVEL_ACTIONS','ORA_LOGON_LOGOFF','ORA_STIG_RECOMMENDATIONS'); no rows selected SQL>
これらは、いずれも有効になっていません。
- これらのポリシーのいずれかを有効にする前に、監査対象となるアクションを把握します。
ORA_STIG_RECOMMENDATIONS
によって監査されるアクションを確認します。SQL> COL audit_option FORMAT A26 SQL> COL AUDIT_OPTION_TYPE FORMAT A16 SQL> COL OBJECT_SCHEMA FORMAT A4 SQL> COL OBJECT_NAME FORMAT A22 SQL> COL OBJECT_TYPE FORMAT A7 SQL> SELECT audit_option, audit_option_type, object_schema, object_name, object_type FROM audit_unified_policies WHERE policy_name = 'ORA_STIG_RECOMMENDATIONS'; AUDIT_OPTION AUDIT_OPTION_TYP OBJE OBJECT_NAME OBJECT_ -------------------------- ---------------- ---- ---------------------- ------- ALTER SESSION SYSTEM PRIVILEGE NONE NONE NONE CREATE TABLE STANDARD ACTION NONE NONE NONE DROP TABLE STANDARD ACTION NONE NONE NONE ALTER TABLE STANDARD ACTION NONE NONE NONE CREATE SYNONYM STANDARD ACTION NONE NONE NONE DROP SYNONYM STANDARD ACTION NONE NONE NONE CREATE VIEW STANDARD ACTION NONE NONE NONE DROP VIEW STANDARD ACTION NONE NONE NONE CREATE PROCEDURE STANDARD ACTION NONE NONE NONE ALTER PROCEDURE STANDARD ACTION NONE NONE NONE ALTER DATABASE STANDARD ACTION NONE NONE NONE ALTER USER STANDARD ACTION NONE NONE NONE ALTER SYSTEM STANDARD ACTION NONE NONE NONE CREATE USER STANDARD ACTION NONE NONE NONE CREATE ROLE STANDARD ACTION NONE NONE NONE DROP USER STANDARD ACTION NONE NONE NONE DROP ROLE STANDARD ACTION NONE NONE NONE SET ROLE STANDARD ACTION NONE NONE NONE CREATE TRIGGER STANDARD ACTION NONE NONE NONE ALTER TRIGGER STANDARD ACTION NONE NONE NONE DROP TRIGGER STANDARD ACTION NONE NONE NONE CREATE PROFILE STANDARD ACTION NONE NONE NONE DROP PROFILE STANDARD ACTION NONE NONE NONE ALTER PROFILE STANDARD ACTION NONE NONE NONE DROP PROCEDURE STANDARD ACTION NONE NONE NONE CREATE MATERIALIZED VIEW STANDARD ACTION NONE NONE NONE ALTER MATERIALIZED VIEW STANDARD ACTION NONE NONE NONE DROP MATERIALIZED VIEW STANDARD ACTION NONE NONE NONE CREATE TYPE STANDARD ACTION NONE NONE NONE DROP TYPE STANDARD ACTION NONE NONE NONE ALTER ROLE STANDARD ACTION NONE NONE NONE ALTER TYPE STANDARD ACTION NONE NONE NONE CREATE TYPE BODY STANDARD ACTION NONE NONE NONE ALTER TYPE BODY STANDARD ACTION NONE NONE NONE DROP TYPE BODY STANDARD ACTION NONE NONE NONE DROP LIBRARY STANDARD ACTION NONE NONE NONE ALTER VIEW STANDARD ACTION NONE NONE NONE CREATE FUNCTION STANDARD ACTION NONE NONE NONE ALTER FUNCTION STANDARD ACTION NONE NONE NONE DROP FUNCTION STANDARD ACTION NONE NONE NONE CREATE PACKAGE STANDARD ACTION NONE NONE NONE ALTER PACKAGE STANDARD ACTION NONE NONE NONE DROP PACKAGE STANDARD ACTION NONE NONE NONE CREATE PACKAGE BODY STANDARD ACTION NONE NONE NONE ALTER PACKAGE BODY STANDARD ACTION NONE NONE NONE DROP PACKAGE BODY STANDARD ACTION NONE NONE NONE CREATE LIBRARY STANDARD ACTION NONE NONE NONE CREATE JAVA STANDARD ACTION NONE NONE NONE ALTER JAVA STANDARD ACTION NONE NONE NONE DROP JAVA STANDARD ACTION NONE NONE NONE CREATE OPERATOR STANDARD ACTION NONE NONE NONE DROP OPERATOR STANDARD ACTION NONE NONE NONE ALTER OPERATOR STANDARD ACTION NONE NONE NONE CREATE SPFILE STANDARD ACTION NONE NONE NONE ALTER SYNONYM STANDARD ACTION NONE NONE NONE ALTER LIBRARY STANDARD ACTION NONE NONE NONE DROP ASSEMBLY STANDARD ACTION NONE NONE NONE CREATE ASSEMBLY STANDARD ACTION NONE NONE NONE ALTER ASSEMBLY STANDARD ACTION NONE NONE NONE ALTER PLUGGABLE DATABASE STANDARD ACTION NONE NONE NONE CREATE LOCKDOWN PROFILE STANDARD ACTION NONE NONE NONE DROP LOCKDOWN PROFILE STANDARD ACTION NONE NONE NONE ALTER LOCKDOWN PROFILE STANDARD ACTION NONE NONE NONE ADMINISTER KEY MANAGEMENT STANDARD ACTION NONE NONE NONE ALTER DATABASE DICTIONARY STANDARD ACTION NONE NONE NONE GRANT STANDARD ACTION NONE NONE NONE REVOKE STANDARD ACTION NONE NONE NONE ALL OLS ACTION NONE NONE NONE EXECUTE OBJECT ACTION SYS DBMS_SCHEDULER PACKAGE EXECUTE OBJECT ACTION SYS DBMS_JOB PACKAGE EXECUTE OBJECT ACTION SYS DBMS_RLS PACKAGE EXECUTE OBJECT ACTION SYS DBMS_REDACT PACKAGE EXECUTE OBJECT ACTION SYS DBMS_TSDP_MANAGE PACKAGE EXECUTE OBJECT ACTION SYS DBMS_TSDP_PROTECT PACKAGE EXECUTE OBJECT ACTION SYS DBMS_NETWORK_ACL_ADMIN PACKAGE 75 rows selected. SQL>
このポリシーを有効にすると、データベースのセキュリティおよび円滑な実行を損なう可能性のあるすべての主要なアクションの他、すべてのOracle Label Securityアクションも監査されます。この結果は、すべてのユーザーに対してポリシーを有効にする必要があることを示しています。
ORA_ALL_TOPLEVEL_ACTIONS
によって監査されるアクションを確認します。SQL> COL audit_option FORMAT A6 SQL> COL object_name FORMAT A11 SQL> COL audit_only_toplevel FORMAT A22 SQL> SELECT audit_option, audit_option_type, object_schema, object_name, object_type, audit_only_toplevel FROM audit_unified_policies WHERE policy_name = 'ORA_ALL_TOPLEVEL_ACTIONS'; AUDIT_ AUDIT_OPTION_TYP OBJE OBJECT_NAME OBJECT_ AUDIT_ONLY_TOPLEVEL ------ ---------------- ---- ----------- ------- ---------------------- ALL STANDARD ACTION NONE NONE NONE YES SQL>
このポリシーを有効にすると、データベースのセキュリティを損なう可能性のあるオブジェクトに対して権限を持つユーザーの最上位レベルのアクションがすべて監査されます。この結果は、すべてのユーザーに対してポリシーを有効にする必要があることを示しています。
ORA_LOGON_LOGOFF
によって監査されるアクションを確認します。SQL> COL audit_option FORMAT A6 SQL> COL object_name FORMAT A11 SQL> COL audit_only_toplevel FORMAT A22 SQL> SELECT audit_option, audit_option_type, object_schema, object_name, object_type, audit_only_toplevel FROM audit_unified_policies WHERE policy_name = 'ORA_LOGON_LOGOFF'; AUDIT_ AUDIT_OPTION_TYP OBJE OBJECT_NAME OBJECT_ AUDIT_ONLY_TOPLEVEL ------ ---------------- ---- ----------- ------- ---------------------- LOGON STANDARD ACTION NONE NONE NONE NO LOGOFF STANDARD ACTION NONE NONE NONE NO SQL>
このポリシーを有効にすると、データベースへのセキュアでない接続を表示する可能性のあるすべての接続および切断が監査されます。このポリシーは、Center for Internet Security (CIS)と技術導入のセキュリティ・ガイド(STIG)の両方の要件に必要です。
- すべてのユーザーに対して3つすべての監査ポリシーを有効にします。
SQL> AUDIT POLICY ORA_STIG_RECOMMENDATIONS; Audit succeeded. SQL> AUDIT POLICY ORA_ALL_TOPLEVEL_ACTIONS; Audit succeeded. SQL> AUDIT POLICY ORA_LOGON_LOGOFF; Audit succeeded. SQL> EXIT $