ノート:
- このチュートリアルでは、Oracle Cloudへのアクセスが必要です。無料アカウントにサインアップするには、Oracle Cloud Infrastructure Free Tierの開始を参照してください。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントに例の値を使用します。演習を終える際は、これらの値をクラウド環境に固有の値に置き換えてください。
Oracle Cloud Infrastructure上のOracle Databaseでの段階的パスワード・ロールオーバーの設定
イントロダクション
段階的パスワード・ロールオーバーは、Oracle Databaseの機能で、現在古いパスワードを使用しているアプリケーションを中断することなく、データベース・ユーザーのパスワードを変更できます。段階的なパスワード・ロールオーバーでは、古いパスワードは指定した期間有効なままであり、その後は受け入れられなくなり、ユーザーに対して2つの異なるパスワードが一時的に許可されます。これにより、停止時間なしで新しいパスワードをすべてのクライアント・アプリケーションに伝播できます。パスワード・ロールオーバー期間は、パスワードが変更された時点から始まります。
段階的なパスワード・ロールオーバー機能は、ユーザー・セッションに適用されるユーザー・プロファイル・パスワード・リソース設定(パスワード・リソース制限)PASSWORD_ROLLOVER_TIME
として公開されます。Oracle Databaseのユーザー・プロファイルは、データベース・リソース(ユーザー・レベル構成)に対する一連の制限です。ユーザー・プロファイルは、各データベース・ユーザーによって使用されるリソースの量の規制に役立ちます。データベースは、DEFAULT
というデフォルト・プロファイルで作成されます。このプロファイルは、特に指定されていない場合は、データベースのすべてのユーザーに割り当てられます。デフォルト・プロファイルを使用するか、新しいプロファイルを作成してパスワード・リソース制限を追加できます。
このチュートリアルでは、PASSWORD_ROLLOVER_TIME
のみに焦点を当て、Oracle Autonomous Transaction Processing (ATP)データベース・サービスでこの機能を使用するためのステップバイステップ・ガイドを参照してください。この目的のために、OCIコンソールのOracle SQL Developer Webツールを使用します。
パスワード・ロールオーバー機能を使用する前に知っておくべきことは他にもあります。
-
ロールオーバー期間内にパスワードが再度変更された場合、最も古いパスワードと最も新しいパスワードのみが有効なままになります。たとえば、最初のユーザーがパスワード・ロールオーバーでp2に変更されたパスワードp1を持っていて、最初の変更のロールオーバー期間内に再度p3に変更された場合、p1およびp3のみが有効であり、p2は無効になります。また、パスワード・ロールオーバー期間の有効期限は変更されません。つまり、新しいパスワード変更の更新は行われません。これは、アプリケーションが引き続き古いパスワードを使用して接続を作成できるため、パスワード・ロールオーバー・ウィンドウ内でパスワードが複数回ローテーションされる場合に非常に役立ちます。
-
管理ユーザーは、
PASSWORD_ROLLOVER_TIME
パラメータが設定されているプロファイルにアタッチされている場合でもパスワード・ロールオーバー機能を使用できず、PASSWORD_ROLLOVER_TIME
パラメータが設定されているプロファイルにアタッチされているユーザーには管理権限を付与できません。
目的
- Oracle Databaseで段階的パスワード・ロールオーバー機能を使用します。この機能を活用して、パスワード変更によるアプリケーションの停止時間や調整を回避します。
前提条件
-
アクティブなOCIアカウント。
-
Oracle Databaseに関する知識
-
ATPデータベース・インスタンス。
-
プロファイルを作成し、Oracle Cloud Infrastructure Databaseでユーザーにプロファイルを割り当てることができるユーザー権限。
タスク1: ATPのデフォルト・プロファイルの確認
ATPには、デフォルトのプロファイルとPASSWORD_ROLLOVER_TIME
リソースの値が表示されます。
Oracle SQL Developer Webツールを開き、次のSQL問合せを実行して、DEFAULT
プロファイルの制限を確認します。
select * from dba_profiles where profile = 'DEFAULT';
次のイメージでは、DEFAULT
プロファイルに多数のリソースがあり、PASSWORD_ROLLOVER_TIME
の制限(値)が0であることがわかります。これは、DEFAULT
プロファイルに対して段階的なパスワード・ロールオーバーが無効になっていることを意味します。DEFAULT
プロファイル内のリソースの制限は変更できますが、この機能を示す新しいプロファイルを作成します。
タスク2: 新規ユーザー・プロファイルの作成
FAILED_LOGIN_ATTEMPTS
が10に設定され、PASSWORD_ROLLOVER_TIME
制限が1時間(1/24日)に設定されたプロファイルを作成します。
-
次のSQL問合せを実行して、
PW_ROLLOVER_TIME_1HR_PROF
という名前のプロファイルを作成します。create profile PW_ROLLOVER_TIME_1HR_PROF limit FAILED_LOGIN_ATTEMPTS 10 PASSWORD_ROLLOVER_TIME 1/24;
-
次のSQL問合せを実行して、
PASSWORD_ROLLOVER_TIME
の制限を確認します。select * from dba_profiles where profile = 'PW_ROLLOVER_TIME_1HR_PROF';
PASSWORD_ROLLOVER_TIME
のリソース制限は0.416
(1/24日)で、失敗したログイン試行は10
に設定されます。
タスク3: ユーザー・アカウントの作成
ユーザー・アカウントを作成し、作成したプロファイルPW_ROLLOVER_TIME_1HR_PROF
をユーザーに割り当てます。
-
次のSQL問合せを実行して、
db_test
というユーザーを作成します。create user db_test identified by "Pass_Rollover@2023" profile = 'PW_ROLLOVER_TIME_1HR_PROF';
次のコマンドを使用して、既存のユーザーをプロファイルに添付することもできます。
alter user <user_name> profile <profile_name>;
-
次のSQL問合せを実行して、データベース接続をテストするための
CREATE SESSION
権限を付与します。GRANT CREATE SESSION TO DB_TEST;
-
次のSQL問合せを使用して、アカウント・ステータスを確認します。
select user_name, profile, account_status from dba_users where user_name = 'DB_TEST';
タスク4: ユーザー・パスワードの変更
ユーザー・パスワードを変更し、アカウント・ステータスを表示します。
-
ユーザー・パスワードを変更するには、次のSQL問合せを実行します。
alter user DB_TEST identified by "New_Pass@2023";
-
アカウント・ステータスを確認します。
アカウント・ステータスに
IN ROLLOVER
が表示されるようになりました。これは、DB_TEST
ユーザー・アカウントが現在ロールオーバー中であり、古いパスワードと新しいパスワードの両方を使用してユーザーに1時間接続できることを意味します。1時間経過すると、古いパスワードは受け入れられなくなり、新しいパスワードのみを使用して接続を確立できます。
タスク5: ロールオーバー期間の強制失効
パスワード・ロールオーバー機能を使用すると、古いパスワードを残りのロールオーバー期間に対して有効にしない場合に、ロールオーバーを強制的に期限切れにできます。
-
次のSQL問合せを実行して、ユーザーのパスワード・ロールオーバーを期限切れにします。
alter user DB_TEST expire password rollover period;
-
アカウント・ステータスを確認します。
アカウントのステータスが
OPEN
に変更され、古いパスワードを使用してデータベースに接続できなくなりました。そのため、新しいパスワードと古いパスワードの両方などのユーザーがロールオーバー中の場合、DBA_USERS
表のアカウント・ステータスはOPEN & IN ROLLOVER
で、ロールオーバー期間が終了するとアカウント・ステータスはOPEN
に変わります。
関連リンク
承認
- 著者 - Satyam Kumar (技術スタッフ・メンバー)
その他の学習リソース
docs.oracle.com/learnの他のラボをご覧いただくか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスして、Oracle Learning Explorerになります。
製品ドキュメントは、Oracle Help Centerを参照してください。
Set up Gradual Password Rollover in Oracle Database on Oracle Cloud Infrastructure
F93096-01
February 2024
Copyright © 2024, Oracle and/or its affiliates.