専用Exadataインフラストラクチャ上のAutonomous Databaseでのユーザー・プロファイルの管理

Autonomous Databaseでユーザー・プロファイルを作成および変更できます。プロファイルを作成または変更した後、CREATE USERまたはALTER USERを使用してプロファイル句を指定できます。Oracle Data Pump Importを使用して、既存のユーザー・プロファイルを別の環境からインポートすることもできます。

ノート:

Autonomous Databaseでは、プロファイル句に制限があります。CREATE PROFILEおよびALTER PROFILEの制限の詳細は、「SQLコマンドの使用に関する制限事項」を参照してください。

DEFAULTプロファイルを含むプロファイルのパスワード・パラメータを追加、変更または削除するには、ALTER PROFILEシステム権限が必要です。

  1. プロファイルを追加または変更するには、ADMINユーザーとしてCREATE PROFILEまたはALTER PROFILEを実行します。次に例を示します。
    CREATE PROFILE new_profile
      LIMIT PASSWORD_REUSE_MAX 10
      PASSWORD_LOCK_TIME 5;

    ADMINユーザーでない場合、CREATE PROFILEを実行するにはCREATE PROFILE権限が必要です。ALTER PROFILEを実行する場合は、ALTER PROFILE権限が必要です。

  2. CREATE USERまたはALTER USERコマンドで、新規プロファイルまたは変更されたプロファイルを使用します。次に例を示します。
    CREATE USER new_user IDENTIFIED BY password PROFILE new_profile;
    GRANT CREATE SESSION TO new_user;

これにより、プロファイルnew_profileおよび接続権限を持つnew_userが作成されます。これで、new_userがデータベースに接続し、問合せを実行できるようになります。追加権限をユーザーに付与するには、データベース・ユーザー権限の管理を参照してください。

CREATE PROFILEの使用方法の詳細は、Oracle Database 19c SQL言語リファレンスCREATE PROFILEまたはOracle Database 23ai SQL言語リファレンスを参照してください。

他の環境で作成された既存のプロファイルは、Oracle Data Pump Import (impdp)を使用してインポートできます。データベース・ユーザーと既存のプロファイルの関連付けは、Autonomous Databaseへのインポート後も保持されます。Oracle Data Pumpインポートから作成された新規作成ユーザーが初めてログインしようとすると、ログインは次のように処理されます。

  • パスワードの複雑度の制限は、Autonomous Databaseのすべてのユーザーに対する制限と同じです。
  • ユーザーのパスワードがパスワードの複雑さの要件に違反した場合、アカウントは30日間の猶予期間で期限切れになります。この場合、ユーザーは猶予期間が終了する前にパスワードを変更する必要があります。

ノート:

プロファイルORA_PROTECTED_PROFILEを持つユーザーのプロファイル割当ては変更できません。

プロファイルを作成または変更するときに、パスワード検証ファンクション(PVF)を指定してパスワードの複雑度を管理できます。詳細は、Autonomous Databaseでのパスワードの複雑度の管理に関する項を参照してください。

Autonomous Databaseでのパスワードの複雑度の管理

パスワード検証ファンクション(PVF)を作成し、PVFをプロファイルに関連付けて、ユーザー・パスワードの複雑性を管理できます。

ノート:

ユーザーが指定したPVFのパスワードの最小長は8文字で、少なくとも1つの大文字、1つの小文字および1つの数字を含める必要があります。DEFAULTプロファイルの最小パスワード長は12文字です(DEFAULTプロファイルではCLOUD_VERIFY_FUNCTION PVFが使用されます)。パスワードにユーザー名を含めることはできません。

Oracleでは、12文字以上のパスワード長を使用することをお薦めします。プロファイルのPVFを定義し、最小パスワード長を12文字未満に設定すると、Oracle Database Security Assessment Tool (DBSAT)などのツールでは、これがデータベース・セキュリティ・リスクとして報告されます。

たとえば、プロファイルにPVFを指定するには、次のコマンドを使用します:

CREATE PROFILE example_profile LIMIT PASSWORD_VERIFY_FUNCTION ADMIN.EXAMPLE_PVF

ADMINユーザー以外のユーザーによってプロファイルが作成または変更される場合は、PVFに対するEXECUTE権限を付与する必要があります。PVFを作成し、パスワード・チェックに失敗した場合は、ORA-28219エラーがレポートされます。

次のいずれかのOracle提供PVFを指定できます:

  • CLOUD_VERIFY_FUNCTION (これはAutonomous Databaseのデフォルトのパスワード検証ファンクションです):

    このファンクションでは、ユーザーによるパスワードの作成または変更時に、次の要件をチェックします:

    • パスワードは、12文字から30文字までの長さとし、大文字、小文字および数字をそれぞれ1文字以上含める必要があります。

    • パスワードにユーザー名を含めることはできません。

    • 同じユーザー名に、過去4回のパスワードを使用することはできません。

    • パスワードに二重引用符(")文字を含めることはできません。

    • パスワードを、設定してから24時間経過していないパスワードと同じにすることはできません。

  • ORA12C_STIG_VERIFY_FUNCTION

    このファンクションでは、ユーザーによるパスワードの作成または変更時に、次の要件をチェックします:

    • パスワードが15文字以上であること。

    • パスワードに少なくとも1文字以上の小文字と、1文字以上の大文字が含まれていること。

    • パスワードに少なくとも1つの数字が含まれていること。

    • パスワードに少なくとも1つの特殊文字が含まれていること。

    • 前のパスワードとの違いが8文字以上あること。

    詳細は、『Oracle Database 19cセキュリティ・ガイド』または『Oracle Database 23aiセキュリティ・ガイド』ora12c_stig_verify_functionパスワード要件を参照してください。

作成してプロファイルに割り当てるパスワード検証ファンクション(PVF)には、次の制限事項があります:

  • ユーザー・プロファイルを指定する場合、パスワードの最小長は、次のように、関連するPVFの定義方法によって異なります:

    • PVFが定義されている場合、適用されるパスワードの最小長は、少なくとも1つの大文字、1つの小文字、および1つの数字を含む8文字です。パスワードにユーザー名を含めることはできません。

    • PVFがNULLと定義されている場合、適用されるパスワードの最小長は8文字で、少なくとも1つの大文字、1つの小文字および1つの数字が含まれます。パスワードにユーザー名を含めることはできません。

    • プロファイルにPVFが定義されていない場合は、DEFAULTプロファイルのPVF (CLOUD_VERIFY_FUNCTION)が割り当てられ、最小パスワード長は12文字です。

  • デフォルトのCLOUD_VERIFY_FUNCTIONよりも厳格なパスワード検証ファンクション(PVF)を指定すると、新しい検証ファンクションが使用されます。
  • 作成するPVFは、DEFINER RIGHTS PL/SQLファンクションとして作成する必要があります。CREATEまたはALTER PROFILEへの入力としてINVOKER権限PVFが指定されると、ORA-28220エラーがスローされます。

  • 作成するPVFは、ADMINユーザー・スキーマに作成する必要があります。CREATEまたはALTER PROFILEへの入力としてADMIN以外のユーザーが所有するPVFが指定されると、ORA-28220エラーがスローされます。

  • 管理者以外のユーザーはPVFを変更または削除できません。つまり、CREATEまたはDROP ANY PROCEDURE権限を持つユーザーはPVFを変更または削除できません。

  • プロファイルに関連付けられているPVFが削除された場合、そのプロファイルでPVFを使用するユーザーのパスワードを変更しようとすると、エラーORA-7443がスローされます。ユーザーは、自分のプロファイルに関連付けられたPVFを削除しても引き続きログインできます。ただし、ユーザーのパスワードが期限切れでPVFが削除された場合、ユーザーはログインできません。

    ORA-7443エラーからリカバリするには、ADMINユーザーが削除されたPVFを再作成してプロファイルに割り当てるか、既存のPVFをプロファイルに割り当てる必要があります。これにより、ユーザーはパスワードを変更してログインできるようになります。

  • PVFのセキュリティのために、CREATE ANY PROCEDUREシステム権限およびDROP ANY PROCEDUREシステム権限が監査されます。詳細は、『Oracle Database 19c SQL言語リファレンス』システム権限およびオブジェクト権限のリストまたは『Oracle Database 23ai SQL言語リファレンス』PROCEDURESリストを参照してください。

詳細は、『Oracle Database 19cセキュリティ・ガイド』または『Oracle Database 23aiセキュリティ・ガイド』パスワードの複雑さの管理に関する項を参照してください。

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

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

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

詳細は、アプリケーションの段階的データベース・パスワード・ロールオーバーの管理に関する項を参照してください。