Dbセキュリティやユーザープロファイルのパラメータのチェックにパスワード政策のOracle12c
こんにちは,
ついてご説明しますOracleデータベースの安全保障、データベース、プロファイルセキュリティパラメータです。Oracle databaseのセキュリティをよく理解するには、この前に次の記事を読む必要があります。
https://ittutorial.org/data-redaction-in-oracle-database-2/
https://ittutorial.org/transparent-data-encryption-in-oracle/
Oracle databaseには、次のような多くのセキュリティ・ソリューションがあります。
最も基本的なセキュリティソリューションの1つは、ユーザーのパスワードポリシーとルールです。 ユーザーパスワードは、ユーザープロファイルによって管理されます。
Oracleデータベースでは、プロファイルに基づくパスワードチェックが必要です。
異なるレベルのセキュリティを必要とするユーザー間の制御の違いを可能にする複数のプロファイルをデータベースで定義できます。
Oracleユーザー用に定義されたユーザー-プロファイルのパラメータと説明は次のとおりです。
: 有効期限
パスワード猶予時間:ユーザーがパスワードを変更する猶予日数を表示します
パスワード再利用最大:ユーザーが既に使用しているパスワードを使用できる回数を表示します
パスワード再利用時間:ユーザーが既に使用しているパスワードを使用できる日の数を表示します
パスワード検証機能:複雑なパスワードの使用を提供します。 これには、英字と数字の両方のパスワードの使用、パスワードの長さ、および許可されていない単語リストに属していないパスワードの決定が含まれます。 このプロファイル・オプションの値は、後で変更できます。 この値は、定義されたプロファイルごとに一意にすることができます。 NULL値は、コントロールが有効になっていないことを示します。
失敗したログイン試行:ユーザーアカウントをロックする前に失敗したログインでユーザーが許可された最大回数を表示します
パスワードロック時間: この値が無制限に設定されていて、ログイン試行の失敗が無制限でない場合、アカウントは無期限にロックされます。
データベースユーザーがパスワードセキュリティルールの対象ではない場合、ブルートフォース攻撃や幸運な見積もりによるパスワードへのアクセスは、データベースへの不正アクセスのリスクを増加させます。 ブルートフォース攻撃法は、データベースを攻撃する非常に一般的な方法であり、特定の単語(”12345″”hello”などの既知のパスワード)を使用して単語をデータベースに接続しようとするプログラムを実行することによって実行されます。”hello”などのこんにちは、 )をパスワードとして辞書に入れてください。
パスワードの使用が不十分または弱い場合、データベースのセキュリティ上の問題があります。 これにより、データベース内に保持されているデータが不正なユーザーによって変更される可能性があり、不規則性が可能であり、誤った情報に基づいて重要な運
既存のパスワードセキュリティルールは、組織の目的および企業のセキュリティポリシーと一致していることを確認するために検討する必要があります。
データベース管理者は、安全なユーザープロファイルを使用してデータベース内のユーザーのパスワードセキュリティチェックを実行する問題を解決する必要があ これにより、アカウントのパスワードが定期的に変更され、複雑さと最小の長さの対象となり、失敗したエントリはブロックされます。
複数のカスタムデータベースプロファイルを作成すると、異なるレベルのセキュリティを必要とするユーザー間のパスワードチェッ次の表は、Oracle databaseのセキュリティを提供するパラメータの一部を示しています。
名前 | 値 | 説明 |
audit_trail | なし | システム監査を有効にする |
DB_name | MUH | CREATE DATABASEで指定されたデータベース名 |
07_DICTIONARY_ACCESSIBILITY | FALSE | バージョン7辞書アクセシビリティのサポート |
os_roles | FALSE | オペレーティングシステムからロールを取得します |
remote_login_passwordfile | 排他的 | パスワード ファイル使用パラメータ |
remote_os_authent | FALSE | セキュリティで保護されていないリモートクライアントが自動ログオンアカウントを使用できるようにする |
remote_os_roles | FALSE | セキュリティで保護されていないリモートクライアントがosの役割を使用できるようにする |
sql92_security | FALSE | 検索された更新/削除にselect権限が必要です |
utl_file_dir | /oracle/app/file/utl1 | utl_fileアクセス可能なディレクトリリスト |
これらのパラメータの定義は以下の通りである。
AUDIT_TRAIL:データベース監査が有効かどうかを決定します。 NONEが選択されている場合、監査レコードは保持されません。
DB_NAME:データベースの名前を表示します。
DB_LINK_ENCRYPT_LOGIN:データベース-リンクを介したリモートOracle databaseへの接続試行で、暗号化されたパスワードを使用する必要があることを示します。 値がFALSEの場合は、これが有効になっていないことを示します。
OS_ROLES:オペレーティングシステムを使用してユーザー権限を決定するかどうかを指定します。 FALSE値は、有効になっていないことを示します。
: リモート接続のログインに別のパスワードファイルを使用するかどうかを指定します。 パスワードファイルには、SYS以外のユーザーと同様にSYSを含めることができます。 NONEの値は、有効になっていないことを示します。
REMOTE_OS_AUTHENT:リモートクライアントがOS_AUTHENT_PREFIXパラメータの値で認証されるかどうかを指定します。
REMOTE_OS_ROLES–リモートクライアントにオペレーティングシステムの役割を許可するかどうかを指定します。
適切なデータベースセキュリティルールがなければ、アプリケーションのセキュリティリスクを悪用して、許可されたアクセスやデータベースの誤用のリス 安全なパスワードがデータベースで使用されていない場合、ユーザー識別子とパスワードはネットワーク経由でクリアテキストで送信され、権限のない人によっ
データベース内の各セキュリティ設定をより困難にする必要があります。 監査設定は、監査証跡レコードとトリガを使用して有効にし、パスワードを暗号化し、O7_DICTIONARY_ACCESSIBILITYパラメータをFALSEにし、パラメータSQL92_SECURITYを有効にする必要があります。
Dbaは、データベース管理者権限を持つすべてのユーザーを確認し、資格を確認する必要があります。 データベースユーザーは、タスクを効率的かつ迅速に実行するために実際に必要な権限のみを持つ必要があり、ほとんどの場合、最低レベルの特権を付与す
“汎用”データベースユーザーは削除する必要があり、各ユーザーは独自の(一意の)ユーザーを使用する必要があります。