日本語PDF

Oracle Databaseセキュリティ・ガイドのこのリリースの変更

この章の内容は次のとおりです。

Oracle Database Security 19cでの変更点

Oracle Database19cのOracle Databaseセキュリティ・ガイドには、新しいセキュリティ機能が記載されています。

LOBロケータの署名ベース・セキュリティ

このリリース以降、ラージ・オブジェクト(LOB)ロケータの署名ベース・セキュリティを構成できます。

この機能は、特にLOBデータ型のインスタンス(CLOBおよびBLOB)が分散環境で使用される場合に、Oracle Database LOBのセキュリティを強化します。

LOB署名キーは、マルチテナントPDBまたはスタンドアロンの非マルチテナント・データベースのどちらでも使用できます。ALTER DATABASE DICTIONARY ENCRYPT CREDENTIALS SQL文を実行することで、LOB署名キー資格証明の暗号化を有効にできます。それ以外の場合、資格証明は不明瞭化された形式で格納されます。LOB署名キーを暗号化された形式で格納する場合、データベースまたはPDBにオープンTDEキーストアが必要です。

デフォルトのユーザー・アカウントがスキーマ限定になりました

Oracle Databaseリリース18cからスキーマ限定アカウント機能を使用すると、ほとんどのOracle Database提供スキーマ(users)で、ユーザーがこれらのアカウントに対して認証できないようにそのパスワードが削除されるようになりました。

この拡張機能はサンプル・スキーマには影響しません。サンプル・スキーマは、引き続きデフォルトのパスワードとともにインストールされます。

スキーマ限定であるデフォルト・スキーマの場合、管理者は、スキーマに対して認証する必要がある場合でもこれらのアカウントを引き続きパスワードで変更できますが、後でスキーマをスキーマ限定アカウントに戻すことをお薦めします。

この機能の利点は、管理者がこれらのOracle Database提供のスキーマのパスワードを定期的にローテーションする必要がなくなったことです。 この機能により、デフォルトのパスワードを使用してこれらのアカウントにハッキングする攻撃者のセキュリティ・リスクも削減されます。

権限分析ドキュメントのOracle Databaseセキュリティ・ガイドへの移動

権限分析のドキュメントは、『Oracle Database Vault管理者ガイド』から『Oracle Databaseセキュリティ・ガイド』に移動しました。

権限分析のライセンス情報については、『Oracle Databaseライセンス情報ユーザー・マニュアル』を参照してください。

スキーマ限定アカウントに対して管理権限を付与または取り消す機能

SYSOPERSYSBACKUPなどの管理権限をスキーマ限定(パスワードなし)アカウントに付与できるようになりました。

現在管理権限を付与されている既存のユーザー・アカウント(アクティブ、ほとんどアクセスされていない、使用されていないユーザー)は、スキーマ限定アカウントになるように変更できます。この拡張により、管理者はこれらのアカウントのパスワードを管理する必要がなくなります。

SASLおよびSASL以外の両方のActive Directory接続の自動サポート

このリリース以降、Microsoft Active Directory接続では、Simple Authentication and Security Layer (SASL)およびTransport Layer Security (TLS)バインドの両方がサポートされています。

集中管理されたユーザーの場合、Oracleデータベースは最初にSASLバインドを使用してActive Directoryに接続しようとします。Active DirectoryサーバーがSASLバインド接続を拒否した場合、OracleデータベースはSASLバインドなしで接続を自動的に再試行しますが、引き続きTLSで保護されます。

Active Directory管理者はActive Directoryサーバーの接続パラメータを構成しますが、この新しいActive Directory接続拡張に一致するようにデータベースを構成する必要はありません。データベースは、SASLを使用するからSASLバインドを使用しないに、自動的に調整されます。

異なるユーザーに対するOracleネイティブ暗号化とTLS認証の同時サポート

以前のリリースのOracle Databaseでは、Oracleネイティブ暗号化(Advanced Networking Option (ANO)暗号化とも呼ばれる)とTransport Layer Security (TLS)認証を併用できませんでした。

このリリース以降、新しいパラメータSQLNET.IGNORE_ANO_ENCRYPTION_FOR_TCPSTRUEに設定して、TCPSクライアントの使用とこれら2つのパラメータのいずれかがrequiredに設定されていることに競合がある場合、SQLNET.ENCRYPTION_CLIENTまたはSQLNET.ENCRYPTION_SERVERを無視できます。

サーバー証明書の照合におけるホスト名ベースの部分DN一致のサポート

部分DN一致に対するこの新しいサポートでは、クライアントがサーバー証明書をさらに検証する機能が追加されます。

Transport Layer Security (TLS)ハンドシェイク中に、サーバー証明書との完全DN一致を実行する以前の機能もサポートされています。クライアントは完全DN一致と部分DN一致の両方をサポートします。サーバーDN一致を有効にすると、部分DN一致がデフォルトになります。

証明書の検証に部分および完全DN一致を許可すると、証明書の作成方法に基づいて柔軟性が向上します。

トップレベルのSQL文のみを監査する機能

統合監査のトップレベルの文機能を使用すると、データベース内のトップ・レベル・ユーザー(または直接ユーザー)のアクティビティを監査できますが、間接ユーザー・アクティビティ監査データは収集されません。

この機能を使用すると、トップレベルのユーザーが直接発行したイベントのみを監査できます。間接SQL文のオーバーヘッドはありません。 トップレベルの文は、ユーザーが直接発行するSQL文です。これらの文は、セキュリティとコンプライアンスの両方にとって重要になる可能性があります。 PL/SQLプロシージャ内またはファンクション内から実行されるSQL文は、トップレベルとはみなされないため、監査目的にはあまり関係がない可能性があります。

統合監査証跡の読取りパフォーマンスの改善

統合監査証跡レコードを格納するAUDSYS.AUD$UNIFIEDシステム表は、読取りパフォーマンスを向上するためにパーティション・プルーニングを使用して再設計されました。

この再設計により、AUDSYS.AUD$UNIFIED表への新しい列の追加が必要になります。AUDSYS.AUD$UNIFIED表監査レコードの問合せを可能にするUNIFIED_AUDIT_TRAILデータ・ディクショナリ・ビューでは、新しいAUDSYS.AUD$UNIFIED表列に対応するEVENT_TIMESTAMP_UTC列が追加されました。この拡張に伴い、GV$UNIFIED_AUDIT_TRAILビューのEVENT_TIMESTAMP列のデータ型はTIMESTAMP(6)に変更されました。

UNIFIED_AUDIT_TRAILビューを問い合せる場合は、パーティション化プルーニングを実現するためにWHERE句にEVENT_TIMESTAMP_UTC列を含めることをお薦めします。

共通統合監査ポリシーのSYSLOG宛先

Oracle Databaseリリース19.9で使用でき、共通統合監査ポリシーからの統合監査レコードの特定の事前定義済列をUNIX SYSLOG宛先に書き込むことができます。

この機能を有効にするには、新しいCDBレベルのinit.oraパラメータであるUNIFIED_AUDIT_COMMON_SYSTEMLOGを設定します。この拡張によって、共通統合監査ポリシーのすべての監査レコードを1つの宛先に統合できます。

この機能は、UNIXプラットフォームのみで使用できます。Windowsでは使用できません。

SYSLOGおよびWindowsイベントビューアの監査レコード・フィールドとしてのPDB_GUID

SYSLOGおよびWindowsイベントビューアの監査レコード・フィールドに、統合監査証跡レコードに関連付けられたプラガブル・データベースを識別するために新しいフィールドPDB_GUIDが追加されました。

マルチテナント・データベース・デプロイメントでは、統合監査証跡レコードを生成したプラガブル・データベースが監査証跡で識別される必要があります。このリリース以降、SYSLOGおよびWindowsイベントビューアには、この情報を取得するために新しいフィールドPDB_GUIDがあります。データ型はVARCHAR2です。

Oracle Database Security 19cの更新

Oracle Databaseリリース19cには、リリース19cの最終更新からの更新がいくつかあります。

Oracle Autonomous Database on Dedicated Exadata Infrastructureに対するIAMユーザーの認証と認可

Oracle Databaseリリース19.14より、Oracle Autonomous Database on Dedicated Exadata Infrastructureに対してIAMユーザーを認証および認可できるようになりました。

追加の機能強化は次のとおりです。

  • アプリケーションは、エンド・ユーザー、インスタンスおよびリソース・プリンシパルを使用してAutonomous Databaseインスタンスに接続できるようになりました。
  • IAMユーザーは、データベース・ユーザー・スキーマを使用してAutonomous Databaseにプロキシできるようになりました。
  • データベース・リンクがIAM接続でサポートされます。

Identity and Access ManagementとOracle Database環境との統合の拡張機能

Oracle Databaseリリース19.16では、Identity and Access Management (IAM)ユーザーとOracle Database環境との統合の拡張機能を使用できます。

  • その他のOracle Database環境:サポートされているOracle Database環境のリストは、次のとおりです。
    • Oracle Autonomous Database on Dedicated Exadata Infrastructure
    • Oracle Autonomous Database on Shared Exadata Infrastructure
    • Oracle Base Database Service
  • IAMのユーザー名とパスワードを使用してIAMトークンを取得する機能: IAMのユーザー名とパスワードまたは安全性の高い外部パスワード・ストア(SEPS)を使用してトークンを取得する方が、データベース・アクセスのパスワード・ベリファイアを使用するよりも安全です。

Oracle Autonomous Cloud DatabaseとIdentity and Access Managementの統合

Oracle Databaseリリース19.13で使用でき、Identity and Access Management (IAM)ユーザーは、パスワードまたはトークンベースの認証のいずれかを使用して、Oracle Autonomous Database on Shared Exadata Infrastructureにログインできます。

IAMのADMINユーザーは、IAMユーザーおよびIAMグループの認証と認可の両方を構成できます。IAMユーザーは、SQL*PlusやSQLclなどのツールを使用して、Oracle Autonomous Databaseにログインできます。

この拡張により、IAMとOracle Databaseの両方のセキュリティ上のメリットが得られます。たとえば、この構成でOracle Databaseの段階的なパスワード・ロールオーバー機能を使用し、停止時間なしでアプリケーション・パスワードを更新できます。

データベース統合でのアイデンティティ・ドメインを含むIdentity and Access Managementの非デフォルト・ドメインのサポート

このリリース以降、Oracle Databaseでは、アイデンティティ・ドメインを含むIdentity and Access Management (IAM)でのテナンシ内の非デフォルト・ドメインがサポートされています。

次のリリースがサポートされています。

  • Oracle Autonomous Database on Shared Exadata Infrastructure
  • Oracle Autonomous Database on Dedicated Exadata Infrastructure

この更新により、デフォルト以外のIAMドメイン内のIAMユーザーが、IAMデータベース・パスワード・ベリファイアまたはIAMアクセス・トークンを使用してデータベースにアクセスできつようになります。デフォルト・ドメイン内のIAMユーザーはすでにサポートされています。

以前のリリースでは、IAM統合は、デフォルト・ドメインからのユーザーおよびグループの場合のみ機能し、デフォルト以外のカスタム・ドメインからのユーザーおよびグループはサポートしていませんでした。

Microsoft Azure Active Directoryとオンプレミスを含むその他のOracle Database環境との統合

Oracle Databaseリリース19.16で使用でき、Microsoft Azure Active Directory (Azure AD)ユーザーは、Azure AD OAuth2アクセス・トークンを使用してその他のOracle Database環境にログインできます。

以前のリリースでは、Oracle Cloud Infrastructure (OCI) Autonomous DatabaseのAzure AD統合がサポートされていました。このリリースでは、Azure AD統合サポートがオンプレミスOracle Databaseリリース19.16以降(Oracle Database 21cを除く)に拡張されました。

Azure AD OAuth2トークンを使用してデータベースにアクセスできます。Azure ADユーザーはAzure ADトークンを使用してデータベースに直接アクセスでき、アプリケーションはサービス・トークンを使用してデータベースにアクセスできます。

Oracle Cloud Infrastructure Autonomous DatabaseとのMicrosoft Azure Active Directory統合

2022年6月にOracle Autonomous Databaseで利用可能となり、Microsoft Azure Active Directory (Azure AD)ユーザーは、Azure AD OAuth2アクセス・トークンを使用してOracle Cloud Infrastructure (OCI) Autonomous Databaseにログインできます。

OCI Oracle Autonomous Databaseは、Azure AD OAuth2トークンを受け入れてデータベースにアクセスできるようになりました。Azure ADユーザーはAzure ADトークンを使用してデータベースに直接アクセスでき、アプリケーションはサービス・トークンを使用してデータベースにアクセスできます。

Azure AD OAuth2トークンを使用してデータベースにアクセスできます。Azure ADユーザーはAzure ADトークンを使用してデータベースに直接アクセスでき、アプリケーションはサービス・トークンを使用してデータベースにアクセスできます。

アプリケーションの段階的データベース・パスワード・ロールオーバー

Oracle Databaseリリース19.12で使用でき、管理者が停止時間をスケジュールしなくても、アプリケーションのデータベース・パスワードを変更できます。

これを行うために、データベース管理者は、このリリースで新しく追加されたPASSWORD_ROLLOVER_TIMEパスワード・プロファイル・パラメータにゼロ以外の制限を持つプロファイルをアプリケーション・スキーマに関連付けることができます。これにより、PASSWORD_ROLLOVER_TIME制限で指定された期間、古いパスワードを有効なままにしながら、アプリケーション・ユーザーのデータベース・パスワードを変更できます。ロールオーバー期間中、アプリケーション・インスタンスは古いパスワードまたは新しいパスワードのいずれかを使用してデータベース・サーバーに接続できます。ロールオーバー時間が経過すると、新しいパスワードのみが許可されます。

この拡張の前は、管理者は通常、アプリケーション・データベースのパスワードのローテーション中にアプリケーションを停止していました。これは、パスワードの更新にデータベース側とアプリケーション側の両方での変更が必要なためです。段階的なデータベース・パスワード・ロールオーバーの拡張により、アプリケーションで新しいパスワードが構成されるまで、アプリケーションは古いパスワードを引き続き使用できます。

CREATE PROFILEおよびALTER PROFILE文の新しい句PASSWORD_ROLLOVER_TIMEに加えて、ALTER USER文には新しい句EXPIRE PASSWORD ROLLOVER PERIODがあります。DBA_USERSおよびUSER_USERSデータ・ディクショナリ・ビューのACCOUNT_STATUS列には、ロールオーバー・ステータスを示す値を示す新しいステータスがいくつかあります。

単一のデータベース・クライアントで複数のKerberosプリンシパルを使用する機能

Oracle Databaseリリース19.10で使用でき、Oracle DatabaseクライアントのKerberos認証を構成するときに、単一のOracle Databaseクライアントで複数のKerberosプリンシパルを指定できます。

この機能を有効にするには、クライアントのユーザーごとに個別の資格証明キャッシュを作成してから、接続文字列を使用してユーザーを指定する必要があります。

以前のリリースでは、Oracle Databaseクライアントごとに1つのKerberosプリンシパルに制限されていました。

FIPS 140.2用のMicro Edition Suite (MES)のサポートの更新

Oracle Databaseリリース19.10で使用でき、Oracle DatabaseではFIPS 140.2用のMicro Edition Suite (MES)バージョン4.5がサポートされます。

Micro Edition Suite (MES)バージョン4.5の更新には、RSA BSAFE MESライブラリ内の4つの新しいCVE、FIPS 140.2で必要なルールのサポート、Crypto Foundationからの更新されたNZ/ZTライブラリへのアクセスが含まれます。

この拡張により、Oracle Database FIPS 140.2構成では、最新のRSA BSAFE MESライブラリの新機能およびセキュリティの向上を活用できます。

DBMS_CRYPTO非対称キー操作のサポート

Oracle Databaseリリース19.9で使用でき、DBMS_CRYPTO PL/SQLパッケージでは、対称キー操作に対する既存のサポートに加えて、非対称キー操作がサポートされます。

非対称キー操作のサポートを実装するために、次のプロシージャがDBMS_CRYPTOパッケージに追加されています。

  • PKENCRYPT
  • PKDECRYPT
  • SIGN
  • VERIFY

共通統合監査ポリシーのSYSLOG宛先

Oracle Databaseリリース19.9で使用でき、共通統合監査ポリシーからの統合監査レコードの特定の事前定義済列をUNIX SYSLOG宛先に書き込むことができます。

この機能を有効にするには、新しいCDBレベルのinit.oraパラメータであるUNIFIED_AUDIT_COMMON_SYSTEMLOGを設定します。この拡張によって、共通統合監査ポリシーのすべての監査レコードを1つの宛先に統合できます。

この機能は、UNIXプラットフォームのみで使用できます。Windowsでは使用できません。

ネイティブ暗号化のセキュリティ更新

Oracleでは、Oracle Databaseリリース11.2以降における、ネイティブ・ネットワーク暗号化環境に影響を与える必要なセキュリティ機能強化に対応するために、ダウンロード可能なパッチを提供しています。

このパッチは、My Oracle Supportノート2118136.2で入手できます。

改善されたサポート対象アルゴリズムは次のとおりです。

  • 暗号化アルゴリズム: AES128、AES192およびAES256
  • チェックサム・アルゴリズム: SHA1、SHA256、SHA384およびSHA512

非推奨であり、使用をお薦めしないアルゴリズムは次のとおりです。

  • 暗号化アルゴリズム: DES、DES40、3DES112、3DES168、RC4_40、RC4_56、RC4_128およびRC4_256
  • チェックサム・アルゴリズム: MD5

サイトでネットワーク・ネイティブ暗号化を使用する必要がある場合は、My Oracle Supportノート2118136.2で説明されているパッチをダウンロードする必要があります。Oracle Databaseインストールの円滑な移行を可能にするために、このパッチでは、脆弱なアルゴリズムを無効にしより強力なアルゴリズムの使用を開始できる、2つのパラメータが提供されます。このパッチは、サーバー上とクライアント上の両方のOracle Databaseインストールにインストールする必要があります。

ネットワーク・ネイティブの暗号化の代替となるのは、TLS (Transport Layer Security)であり、中間者攻撃からの保護を実現します。

クライアント・ウォレットを使用しないTransport Layer Security接続を構成する機能

Oracle Databaseリリース19.14で使用でき、Oracle Databaseクライアントを必要とせずに、ローカル・システムの他の場所でCAルート証明書が使用可能な場合に、その既知の証明書を保持するウォレットを提供します。

Transport Layer Security (TLS)暗号化には、一方向認証または双方向認証のいずれかが必要です。HTTPS接続に一般的に使用される一方向認証(デフォルト)では、ローカル・システムですでに使用可能な既知のルートCA証明書を使用して、サーバー証明書が検証されます。このリリースから、ルート証明書がすでにローカル・システムで使用可能である場合は、その既知の証明書を保持するウォレットをインストールして構成する必要がなくなります。

この拡張により、Oracle Databaseクライアントのインストールと、Oracle Databaseクライアント/サーバー通信を暗号化するTLSプロトコルの使用が大幅に簡略化されます。