※ 本記事は2017年5月18日に公開されたものです。

セキュリティ関連の初期化パラメータの説明の4回目です。

Oracle Databaseでは、ユーザーの認証にLDAPディレクトリを利用することもできます。この機能はEnterprise User Security(12cR2英語マニュアル12cR1日本語マニュアル)と呼ばれ、Enterprise Editionの基本機能として利用可能です。このパラメータはユーザーをディレクトリで認証する際にどのような認証方法を利用するかを指定します。ディレクトリを利用しないNONE、パスワードによる認証をおこなうPASSWORD、SSLによる認証をおこなうSSLの値をとります。Enterprise User Securityは個人IDを利用してデータベースにアクセスすることができる便利な機能ですが、利用できるディレクトリはOracle Internet DirectoryとOracle Unified Directoryに限られていますので注意が必要です。利用していないのに想定外の値が設定されていないかどうか確認してください。

管理ユーザー(SYSDBAおよびSYSOPER)の認証でディレクトリを利用する場合には、このパラメータをyesに設定します。
あくまで追加で作成したSYSDBA権限を持つユーザーであって、SYSユーザーをディレクトリで認証するわけではないのでご注意ください。詳細は「管理ユーザーのディレクトリ認証の構成」も併せてご確認ください。利用していないのに想定外の値が設定されていないかどうか確認してください。

古いバージョンのOracle Database(Oracle 7)では、SELECT ANY TABLEシステム権限などANYキーワードを持つ強力なシステムを持っている場合、SYSスキーマ内の内部表にもアクセスすることができました。つまり、たとえばパスワードハッシュを含むUSER$表にもアクセス可能でした。その後、セキュリティ強化のためANYシステム権限でSYSスキーマのオブジェクトへのアクセスは禁止されましたが、下位互換のためにこのパラメータをTRUEに設定した場合、セキュリティレベルを弱めてANYシステム権限でSYSスキーマのオブジェクトにアクセスできるようになります。デフォルト値はFALSEで、SYSスキーマのオブジェクトにはアクセスできません。特別な要件がない限りにはTRUEに変更しないでください。

Oracle Databaseでは、ユーザー認証をOSに移譲する、外部認証機能があります。この機能を利用するとOSで認証されたユーザーはデータベースで改めて認証することなくデータベースに接続できますが、その際にマッピングされるデータベースユーザー名はこのOS_AUTHENT_PREFIXの値にOSのユーザー名が続いたものになります。例えばOSユーザー名がpukuで、OS_AUTHENT_PREFIXがデフォルトのOPS$の場合、事前にデータベースにOPS$PUKUという外部認証されるデータベースユーザーを作成しておくことで、OSにpukuでログインすれば再度認証することなくデータベースにOPS$PUKUユーザーとして接続することができます。詳細は「ユーザーのオペレーティング・システム認証」も併せてご確認ください。この機能はデータベースサーバー上にアプリケーションを作成し、ユーザーはデータベースサーバーのOSにログインしてそこからアプリケーションを起動して、アプリケーションはネットワークを介さずにデータベースに接続するような構成が一般的だった時代に便利に利用されてきた機能です。現在のネットワークを介してデータベースに接続する環境ではめったに利用する機会がない機能です。利用していないのに想定外の値が設定されていないかどうか確認してください。

このパラメータはOS認証機能と併せて利用し、認証だけではなく権限(ロール)の付与もOSに移譲する機能です。このパラメータをTRUEに設定するとデータベースユーザーに対するロールの割り当てを、OSで管理することができるようになります。詳細は「オペレーティング・システムまたはネットワークを使用したロールの付与」をご確認ください。この機能はデータベースサーバー上にアプリケーションを作成し、ユーザーはデータベースサーバーのOSにログインしてそこからアプリケーションを起動して、アプリケーションはネットワークを介さずにデータベースに接続するような構成が一般的だった時代に便利に利用されてきた機能です。現在のネットワークを介してデータベースに接続する環境ではめったに利用する機会がない機能です。利用していないのに想定外の値が設定されていないかどうか確認してください。

12cR2から追加された初期化パラメータです。PDBごとにユーザーが実行できる操作を制限するロックダウンプロファイルを指定することができます。ロックダウンプロファイルには、AQやパーティションなどのオプション利用の制限、UTL_FILEやUTL_SMTPパッケージなどを利用したネットワークやOSへのアクセスの制限、ALTER DATABASE、ALTER SYSTEM、ALTER SESSIONなどのSQL実行の制限を設定することができます。これらの制限をおこなうことでPDBがOSやネットワークを介してほかのPDBのデータにアクセスできないようにし、PDBごとの独立性を保証できます。詳細は「PDBロックダウン・プロファイルの概要」も併せてご確認ください。

12cR2から追加された初期化パラメータです。通常PDBからOS操作をおこなう際にはOSのoracleインストール(実行)ユーザー権限で処理がおこなわれます。しかし、一般的にこのユーザーは強力な権限を持っており、このOSユーザーの権限を利用することでPDBからOS経由で別のPDBのデータにアクセスされてしまう危険性があります。PDBごとにPDB_OS_CREDENTIALパラメータにOSユーザーを指定することで、そのPDBからOS操作をおこなう際に指定したOSユーザー権限を利用して操作をおこなうことができ、結果としてPDBごとの独立性を保証することができます。

「もくじ」にもどる