OracleのIPアカウントロックの原因を見つけるために

 

ORACLEデータベースに、FAILED_LOGIN_ATTEMPTSを変更しない場合、デフォルト10試みが失敗した後、ユーザがロックされます。アカウントがロックされている。この時点で、その後、ORA-28000が発生します、データベースのログ

 

 

SQL> SELECT * 
  DBA_PROFILES FROM 2
  3 WHERE RESOURCE_NAME = 'FAILED_LOGIN_ATTEMPTS'。
 
PROFILE RESOURCE_NAMEリソース制限
------------------------------ -------------------- ------------ -------- -----
DEFAULT FAILED_LOGIN_ATTEMPTSのPASSWORD 10
MONITORING_PROFILE FAILED_LOGIN_ATTEMPTSのPASSWORD UNLIMITED
 
SQL>

 

そして、データベースの保守プロセスは、状況が発生したアカウントがロックされている場合は、どのホストまたはIP口座につながる事後解析がロックアウトされていますか?異なる状況は、主にデータベース監査を開くかどうかを確認するために、さまざまな分析方法を持っています

 

 

データベースの監査を開きます

 

あなたは、監査機能を開く場合は、分析は非常にシンプルで見つけやすいです。データベースの監査機能は、データベースに情報を記録しますので。

 

AUDIT_SYS_OPERATIONS引数がTRUEで見るために、主に、オープン監査のために確認してください。

 

SQL>ショーパラメータ監査
 
NAMEタイプの値
------------------------------------ ----------- --- ---------------------------
AUDIT_FILE_DEST文字列は/ u01 / app / oracle /管理/ GSP / adum
                                                 P
AUDIT_SYS_OPERATIONSをTRUEブール
AUDIT_SYSLOG_LEVEL文字列
AUDIT_TRAIL文字列DB_EXTENDED
SQL> 

 

あなたは、監査機能を開くと、次のSQL文を簡単に(特定見つけるために、ホストのIPアドレス)原因アカウントロックアウトのホストを見つけることができます

 

---- RETURNCODE = 1017はログインがORA-01017を戻すことに失敗しました意味:無効なユーザー名/パスワード;拒否エラーセッション情報をログオンします。

 AUDIT_TRAIL = DBの場合

SELECT USERNAME 
       、USERHOST TIMESTAMP 
       、RETURNCODE 
FROM DBA_AUDIT_SESSION
 WHERE USERNAME = ' TEST ' 
     RETURNCODE = ' 1017 '  
ORDER  BY  TIMESTAMP  DESC ;

 

 AUDIT_TRAIL = OSの場合

grepの 1017 $ ORACLE_BASE / adminに/ $ ORACLE_SID / adump / * 2019053004 * 
orcl_ora_20432_20190530040340560268143795.aud:SESSIONID:[8] "33072208" ENTRYID:[1] "1" STATEMENT:[1] "1" USERID:[4]「スコット"USERHOST:[12] "APP-01" ACTION:[3] "100" RETURNCODE:[4] "1017" COMMENTの$ TEXT:[98]"によって認証:データベースと、クライアントのアドレス(ADDRESS =(PROTOCOL = TCP )(HOST = 10.4.15.148)(PORT = 47646)) "DBID:[10] "1865135537"  
orcl_ora_20434_20190530040337550602143795.aud:SESSIONID:[8] "33072205" ENTRYID:[1] "1"文:[1]" 1 "USERID:[4] "スコット" USERHOST:[12] "APP-01" ACTION:[3] "100" RETURNCODE:[4] "1017" COMMENTの$ TEXT:[98]"によって認証:データベースとクライアントのアドレス(ADDRESS =(PROTOCOL = TCP)(HOST = 10.4.15.148)(PORT = 47643))」DBID:[10] "1865135537"
orcl_ora_20436_20190530040338555761143795.aud:SESSIONID:[8] "33072209" ENTRYID:[1] "1"文:[1]" 1 "USERID:[4] "スコット" USERHOST:[12] "APP-01" ACTION:[3] "100" RETURNCODE:[4] "1017" COMMENTの$ TEXT:[98]"によって認証:データベースとクライアントのアドレス(ADDRESS =(PROTOCOL = TCP)(HOST = 10.4.15.148)(PORT = 47642))」DBID:[10] "1865135537" 
orcl_ora_20438_20190530040343576957143795.aud:SESSIONID:[8] "33072206" ENTRYID:[1] "1"文:[1] "1" USERID:[4] "スコット" USERHOST:[12] " APP-01" ACTION:[3] "100" RETURNCODE:[4] "1017" COMMENTの$ TEXT:[98]「によって認証:データベースと、クライアントのアドレス(ADDRESS =(PROTOCOL = TCP)(HOST = 10.4.15.148 )(PORT = 47641))」DBID:[10] "1865135537"
orcl_ora_20440_20190530040337545737143795.aud:SESSIONID:[8] "33072207" ENTRYID:[1] "1"文:[1] "1" USERID:[4] "スコット" USERHOST:[12] "APP-01" ACTION:[3 "100" RETURNCODE:[4] "1017" COMMENTする$ TEXT:[98] "によって認証:データベースと、クライアントのアドレス(ADDRESS =(PROTOCOL = TCP)(HOST = 10.4.15.148)(PORT = 47640))" DBID:[10] "1865135537" 
orcl_ora_20442_20190530040337548685143795.aud:SESSIONID:[8] "33072210" ENTRYID:[1] "1"文:[1] "1" USERID:[4] "スコット" USERHOST:[12] " APP-01" ACTION:[3] "100" RETURNCODE:[4] "1017" COMMENTの$ TEXT:[98]「によって認証:データベースと、クライアントのアドレス(ADDRESS =(PROTOCOL = TCP)(HOST = 10.4.15.148 )(PORT = 47639))」DBID:[10] "1865135537"

 

 

データベース監査を閉じます

 

 データベース監査機能がオフになっている場合、その能力は、見つけ原因アカウントロックアウトのホストまたはIPアドレスを見つけるには?このアカウントがロックされている場合は、表示され、アカウントがロックされている時にどの時点で確認しようとしているDBA_USERSを確認することができます。注(いくつかのバージョンのバグ、不正確なLOCK_DATEが起こります。)

  

SQL> ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';
 セッションが変更されました。
SQL> SELECTユーザー名、account_status、lock_date、PROFILE 
  2 DBA_USERS FROM WHEREユーザー名= 'TEST';
 
USERNAME ACCOUNT_STATUS LOCK_DATEのPROFILE
------------ ---------------------- ---------------- --- ----------
TEST LOCKED(TIMED)2018年6月16日午後11時四十九分14秒DEFAULT
 
SQL> 

    

 

    一部のオンライン断固としてそれはIPがアカウントにつながったログアウトを聞くことによって分析することができ宣言がロックされている記事が、ハンズオンラボ分析を通じて、二つの理由から、それは不可能にログファイルを聞くことによって引き起こされたアカウントのロックアウトのIPアドレスを見つけることが見つかりました:

 

1、リスナーは成功と失敗ログオン経験にログインORA-01017エラーのセッション情報をログに記録するので、ログインセッションORA-01017エラーが発生するかどうかを判断することはできませんが、ログを聞くことによって同じです。区別できません!

 

図2に示すように、アカウントのロックアウト時間は、第二が、実稼働環境に配置することができる場合であっても、リスナーの多くは、特定のIPアドレスを見つけることが単にできない1秒以内に発生ログ

 

3、失敗したログインセッションが連続していなくてもよいです。しかし、それは時間の期間を生成しました。ログを分析することにより耳を傾ける可能性を持っていませんでした!

 

ログインまたは失敗アカウントロックリスナー・ログとアラートログは、あなたは、関連する情報を見つけることができます。

あなたは簡単に特定のIPにナビゲートできるように、データベースは、事前にトリガ定義する場合は、次のようにしかし、ユーザーは、トリガーを提供します。

 

CREATE  OR  REPLACE  TRIGGERのsys.logon_denied_to_alertし
  てServerError AFTER ON  データベース
DECLAREの
  メッセージ    VARCHAR2168 )。
  IP         VARCHAR215 ); 
  v_os_user VARCHAR280 )。
  v_module   VARCHAR250 )。
  v_action   VARCHAR250 )。
  v_pid      VARCHAR210 )。
  v_sid      NUMBER ; 
  v_program VARCHAR248 )。
  v_username VARCHAR232 )。
BEGIN 
  IF(ora_is_servererror(1017))THEN 
    - リモート接続用のIPを取得:
    IF  アッパー(SYS_CONTEXT(' USERENV '' NETWORK_PROTOCOL '))=  ' TCP '  THEN 
      IP:= SYS_CONTEXT(' USERENV '' IP_ADDRESS ' );
    END  IF ;
    SELECTSID INTO v_sid FROM SYS.V_ $ MYSTAT WHERE ROWNUM <  2 SELECT p.spid、v.program
       INTO v_pid、v_program
       FROM 五$プロセスp、五$セッションV
      p.addr = v.paddr
        AND v.sid = v_sid。
    v_os_user:= SYS_CONTEXT(' USERENV '' os_user ' )。
    v_username:= SYS_CONTEXT(' USERENV '"AUTHENTICATED_IDENTITY " ); 
    DBMS_APPLICATION_INFO.READ_MODULE(v_module、v_action)。
    メッセージ:= TO_CHAR(SYSDATE、' YYYY-MM-DD HH24:MI:SS '|| 
               パスワードエロ:ログオンから拒否された || NVL(IP、' ローカルホスト'||  '  '  || 
               v_pid ||  ' ユーザー:'  || v_os_user ||   || v_program ||  ' - '  ||
               v_module ||  '  '  || v_action || ' DBUSER:'  || v_username; 
    sys.dbms_system.ksdwrt(2 、メッセージ)。
  END  IF ;
END ;
/

 

 

 

クライアントではSQL * Plusのテスト、アナログ入力間違ったパスワードデータベースを使用して

 

 

C:\ユーザー> SQLPLUSテスト/ 1234 @ myvmに
 
SQL * Plusを:日曜日2018年6月17日0時35分21秒に11.2.0.1.0の生産をリリース
 
著作権(C)1982、2010、Oracleの。全著作権所有。
 
エラー:
ORA-01017:無効なユーザー名/パスワード; ログオン拒否

 

 

このとき、フリップフロップがエラーをキャプチャするために、エラーログには、アラームログに以下のような情報が生成されます。

 

 

日6月17日8時01分44秒2018

2018年6月17日8時01分44秒パスワードエロ:はsqlplus.exeとKongLB:192.168.125.193 26639ユーザーから拒否されたログオン   はsqlplus.exe DBUSER:テスト

 

もちろん、あなたはデータベース関連テーブルに関連する情報をキャプチャし、トリガを書き換えることができます。

 

転送します。https://www.cnblogs.com/kerrycode/p/9191983.html

 

おすすめ

転載: www.cnblogs.com/plluoye/p/10951120.html