データ管理 (DMS) では、承認プロセスはセキュリティルールに関連付けられます。 DMSが提供するチケット承認テンプレートがビジネス要件を満たさない場合は、チケット承認プロセスをカスタマイズできます。 このトピックでは、チケット承認プロセスをカスタマイズし、データベースインスタンスに関連付けられているセキュリティルールに承認プロセスを適用する方法について説明します。 この例では、環境タイプが本番環境のデータベースのデータベース変更チケットを提出するときに、承認プロセスが使用されます。
概要
承認ノードを作成します。
チケットの承認に必要なDMSユーザーを承認ノードに追加します。
承認テンプレートを作成します。
チケット承認プロセスをカスタマイズします。
データベースインスタンスに関連付けられているセキュリティルールに承認テンプレートを適用します。
承認テンプレートは、データベースインスタンスに関連付けられているセキュリティルールに適用された後にのみ有効になります。
前提条件
データベース管理者 (DBA) またはDMS管理者です。 詳細については、「システムロールの表示」をご参照ください。
承認プロセスをカスタマイズするデータベースインスタンスは、セキュリティコラボレーションモードで管理されます。
使用上の注意
各データベースインスタンスは、1つのセキュリティルールセットのみに関連付けることができます。 セキュリティルールセットは、デフォルトのセキュリティルールセットまたはカスタムのセキュリティルールセットです。
チケット承認プロセスでは、少なくとも2人の承認者を指定することを推奨します。 そうしないと、承認結果が不正確または遅れる可能性があります。
DMSを使用すると、インスタンスレベルのセキュリティルールを設定できます。 これにより、異なるデータベースインスタンスまたはデータベースに対して異なる承認プロセスをカスタマイズできます。 ただし、インスタンスレベルのセキュリティルールには、実際のビジネス環境で次の制限がある場合があります。
各データベースインスタンスにはDBAが1つだけあります。 DBAを承認プロセスの承認者として指定したが、DBAが時間内にチケットを承認できない場合、承認プロセスが遅れる可能性があります。
複数のビジネスユニットがデータベースインスタンス内で同じデータベースを共有する場合、各ビジネスユニットはそれぞれのビジネスオペレーションのチケットのみを承認したい場合があります。 ただし、現在のインスタンスレベルのセキュリティルールでは、このタイプの承認プロセスを実装することはできません。
手順1: 承認ノードの作成
DMSコンソールV5.0 にログインします。
左上隅のアイコンの上にポインターを移動し、
を選択します。説明DMSコンソールを通常モードで使用する場合は、上部のナビゲーションバーで
を選択します。[承認プロセス] ページで、[承認ノード] タブをクリックします。 [承認ノード] タブで、[承認ノードの作成] をクリックします。 [承認ノードの作成] ダイアログボックスで、パラメーターを設定します。
この例では、2つの承認ノードが作成されます。 1つはTest DMS Adminという名前で、db_docという名前のテストDMS管理者が承認者として指定されています。 もう1つはTest Userという名前で、dmsuserという名前のテストユーザーが承認者として指定されています。
説明承認ノードに1つ以上の承認者を指定できます。 承認ノードに複数の承認者を指定した後、少なくとも1人の承認者がチケットを承認した場合、チケットは承認を通過します。
[送信] をクリックします。
手順2: 承認テンプレートの作成
[承認プロセス] ページで、[承認テンプレート] タブをクリックします。 [承認テンプレート] タブで、[承認テンプレートの作成] をクリックします。 [承認テンプレートの作成] ダイアログボックスで、パラメーターを設定します。
この例では、テンプレートの名前はTest User->Test DMS Adminであり、承認プロセスを定義します。 この承認プロセスでは、チケットはdmsuserによって承認され、次にdb_docによって承認されます。 が [備考] フィールドに入力されます。 承認ノードは、Test UserとTest DMS Adminの順序で追加されます。
[送信] をクリックします。
承認テンプレートが作成されたら、新しい承認テンプレートのIDを記録します。
この例では、テンプレートIDは4399383です。
手順3: 承認テンプレートをセキュリティルールに適用
左上隅のアイコンの上にポインタを移動し、
を選択します。説明DMSコンソールを通常モードで使用する場合は、上部のナビゲーションバーで
を選択します。[セキュリティルール] ページで、管理するセキュリティルールセットを見つけ、[操作] 列の [編集] をクリックします。
セキュリティルールセットの [詳細] ページで、左側のウィンドウで [SQLの修正] をクリックします。
[SQL正解] タブで、チェックポイントとして [リスク承認ルール] を選択します。 中レベルのリスク承認プロセスに適用されるセキュリティルールを見つけ、[操作] 列の [編集] をクリックします。
[ルールDSL] フィールドのテンプレートIDを、手順2で作成した承認テンプレートのIDに置き換えます。 この例では、テンプレートIDが4399383に置き換えられています。
[送信] をクリックします。
[SQL修正] タブで、セキュリティルールを見つけ、[操作] 列の [有効化] をクリックします。
リスク承認ルールをリスク識別ルールに関連付けます。
[SQL Correct] タブで、チェックポイントとして
を選択します。 本番環境、デフォルトは中リスクルールを見つけ、[操作] 列の [編集] をクリックします。 [ルールの変更-SQL修正] ダイアログボックスで、[ルールDSL] フィールドのドメイン固有言語 (DSL) コードを編集して、指定した環境タイプのデータベースにカスタム承認プロセスを適用します。次のサンプルコードは、[ルールDSL] フィールドのDSLコードを編集する方法の例を示しています。 DSLコードは、環境タイプが生産であるデータベースへのデータのインポートが、中レベルのリスクを引き起こす可能性のある操作と見なされることを示しています。 この場合、Test User->Test DMS Adminテンプレートが承認テンプレートとして使用されます。
if @fac.env_type in ['product'] then @act.mark_risk 'middle' 'Medium-level risk: online environment'. end
承認テンプレートが適用されているかどうかを確認します。
この例では、実稼働環境のデータベースにデータをインポートするためにチケットが送信されます。 承認ダイアログボックスの承認プロセスが設定したものと同じ場合、承認テンプレートが適用されます。 詳細については、「データのインポート」をご参照ください。
次のステップ
チケット承認プロセスをカスタマイズした後、承認プロセスの承認者のチケット承認通知を受信するために使用される方法を構成する必要がある場合もあります。 サポートされている通知方法には、テキストメッセージ、DingTalk、および電子メールがあります。 詳細については、「ユーザーの管理」および「DingTalk Standard Edition、DingTalk Exclusive Edition、およびLarkによる通知の構成」をご参照ください。
よくある質問
Q: データベースごとに異なる承認者を指定するにはどうすればよいですか?
A: データベースごとに異なるリソース所有者を指定できます。 承認テンプレートを作成するときに、システムノードの所有者を承認ノードとして追加します。