スクリプト化された監査の作成

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:11分
  • スクリプト化された監査とは、スクリプトによって条件が定義されている監査のことです。

    手順

    1. 次のように移動する。 All (すべて) > コンプライアンス > スクリプト化された監査 > 監査.

      監査タイプ [スクリプト化] は、リストをフィルタリングします。

    2. [新規] をクリックします。
    3. フォームに入力します (表を参照)。
    4. 監査スクリプトを作成します。

      [このスクリプトを実行] フィールドには、監査を実行し、後続のタスクを生成するための指示を含むサンプル スクリプトが含まれています。このフィールドは、[スクリプト化された監査] モジュールからの監査にアクセスする場合にのみ表示されます。

    5. [送信] をクリックします。

      サンプル スクリプト:

      /*
      /////////////////////////////////////////////////////
      /// This script works with Data Center Zones filter //
      /////////////////////////////////////////////////////
       
      var desiredFloorSpaceUsage = 30;		// Value to audit against
      var assignToUser = '46d44a23a9fe19810012d100cca80666';	 // Beth Anglin
      var assignToGroup = '8a5055c9c61122780043563ef53438e3';	// Hardware group
      var taskMsg = 'See the audit results below for the discrepancies that must be addressed';
       
      // API call to retrieve records based on the filter
      var gr = new SNC.CertificationProcessing().getFilterRecords(current.filter);
       
      // Loop over all records defined by the filter
      while(gr.next()) {
      	var sysId = gr.getValue('sys_id');	// Sys ID of audited record
      	var floorSpaceInUse = gr.getValue('floor_space_in_use');	// Value to audit
       
      	// Determine if certification condition passes or fails
      	if (floorSpaceInUse < desiredFloorSpaceUsage) {
      		var columnNameSpace = gr.floor_space_in_use.getLabel();	// String value of column audited against
       
      		// Call create Follow on Task API and save the returned sys_id for use in logging audit result fail
      		// Params: 
      		// auditId - Sys id of the audit record executed
      		// ciId Sys - id of the configuration item.  Empty string if not a cmdb ci
      		// assignedTo - Sys id of user to assign task to.  Can be empty
      		// assignmentGroup - Sys id of group to assign task to.  Can be empty
      		// shortDescr - Short description for the Follow On Task.  Can be empty
      		// Return value: Sys id of the created follow on task
      		var followOnTask = new SNC.CertificationProcessing().createFollowOnTask(current.sys_id, sysId, assignToUser, '', taskMsg);
       
      		// Call log failed result API
      		// Params:
      		// auditId - Sys id of audit record executed
      		// auditedRecordId - Sys id of the record audited
      		// followOnTask - Sys id of the follow on task associated with the audited record(@see auditedRecordId). Can be empty
      		// columnDisplayName - Label of the column audited(ex. Disk space (GB)).  Can be empty
      		// operatorLabel - Label of the operator used to audit the column(ex. is not empty, greater than). Can be empty
      		// desiredValue - Desired value of the column.  Can be empty
      		// discrepancyValue - Discrepancy value.  Can be empty
      		// isCI - True, if audited record is a CI. False, otherwise.
      		// domainToUse - Sys domain of the "cert_audit" record.  Can be empty
      		new SNC.CertificationProcessing().logAuditResultFail(current.sys_id, sysId, followOnTask, columnNameSpace, 'greater than', desiredFloorSpaceUsage, floorSpaceInUse, true);
      	} else { // If certification condition pass, write a Audit Result Pass via API
      		// Params:
      		// auditId - Sys id of audit record executed
      		// auditedRecordId - Sys id of the record audited
      		// isCI - True, if audited record is a CI. False, otherwise.  Can be empty.
      		// domainToUse - Sys domain of the "cert_audit" record.  Can be empty.
      		new SNC.CertificationProcessing().logAuditResultPass(current.sys_id, sysId, true);
      	}
      }
      */
      表 : 1. 新しいスクリプト化された監査テーブル。
      フィールド 説明
      名前 この監査の名前。
      フィルター 監査タイプがスクリプト化の場合に使用するフィルター。このフィールドはスクリプト化された監査には必要ですが、他のすべての監査タイプでは非表示になります。
      テンプレート [必須] この監査の実行時に使用するテンプレート。監査タイプは使用可能なテンプレートのリストをフィルタリングし、有効なバージョンのテンプレートのみを選択できます。このフィールドは、監査タイプが [スクリプト化] の場合は非表示になります。
      テーブル [読み取り専用] テンプレートのテーブルを表示します。
      タスクを作成 選択すると、不一致を修正するための後続タスクを作成します。スクリプト化された監査では、true を使用してタスクを作成するか、または false を使用してタスクを作成しないかのいずれかのタスク状態の論理を作成できます。デフォルトでは、新しい監査レコードのこのチェック ボックスはオフ (false) になっています。
      割り当てタイプ
      監査が後続タスクをどのように割り当てるかを選択するための選択リスト。このフィールドは、[タスクを作成] チェック ボックスがオンになっている場合にのみ表示されます。選択肢は次のとおりです。
      • ユーザーフィールド:監査対象のテーブルのユーザー参照フィールドを選択します。たとえば、不合格のレコードの [管理担当者] フィールドによって特定されるユーザーを選択し、タスクを実行します。この選択により、[担当者] および [空に割り当て] フィールドが表示されます。レコードの参照フィールドが空の場合、[空に割り当て] フィールドの値が使用されます。
      • 特定ユーザー:タスクを実行する特定のユーザーを選択します。この選択により、[ユーザー] フィールドが表示されます。
      • グループ フィールド:監査対象のテーブルのグループ参照フィールドを選択します。例として、失敗したレコードからサポート グループを選択してタスクを実行します。この選択により、[グループに割り当て] および [空に割り当て] フィールドが表示されます。失敗したレコードの参照フィールドからグループのすべてのメンバーがタスクに割り当てられます。レコードの参照フィールドが空の場合、[空に割り当て] フィールドの値が使用されます。
      • 特定グループ:タスクを実行する特定のグループを選択します。この選択により、[グループ] フィールドが表示されます。選択したグループのすべてのメンバーがタスクに割り当てられます。
      ユーザー
      この監査によって後続タスクに割り当てられる特定のユーザー。このフィールドは、次の条件で使用できます。
      • 割り当てタイプが [特定ユーザー] に設定されている。
      • [空に割り当て] が [割り当てタスクを作成]、および [割り当てタイプ] が [ユーザー フィールド] に設定されている。
      注:
      指定したユーザーが certification ロールを持っていることを確認してください。
      グループに割り当て この監査によって後続タスクに割り当てられるグループを定義するグループ フィールド。このフィールドは、[割り当てタイプ] が [グループ フィールド] の場合にのみ使用できます。
      グループ この監査によって後続タスクに割り当てられる特定のグループ。このフィールドは、[割り当てタイプ] が [特定グループ] であり、割り当てタイプとして [グループ フィールド] を選択した場合にのみ使用できます。
      アサイン先 この監査によって後続タスクに割り当てられるユーザーを定義するユーザー フィールド。このフィールドは、[割り当てタイプ] が [ユーザー フィールド] の場合にのみ使用できます。
      空に割り当て
      監査対象のレコードで [アサイン先] または [グループに割り当て] で選択されたフィールドが空の場合に使用する動作。たとえば、後続タスクをマネージャーに割り当てる必要があるものの、マネージャーが特定されていない場合は、このフィールドの値によって処理の内容が決まります。このフィールドは、[割り当てタイプ] が [ユーザー フィールド] または [グループ フィールド] の場合にのみ表示されます。選択肢は次のとおりです。
      • タスクを作成しない:[アサイン先] または [グループに割り当て] フィールドが空の場合、後続タスクは作成されません。
      • 未割り当てタスクを作成:後続タスクを作成しますが、ユーザーまたはグループに割り当てません。タスクは後で手動で割り当てることができます。
      • 割り当てタスクを作成:後続タスクを作成し、指定したユーザーまたはグループに割り当てます。割り当てタイプが [ユーザー フィールド] の場合、[ユーザー] フィールドが使用可能です。[グループ フィールド] タイプを選択した場合、[グループ] フィールドが使用可能です。

      [空に割り当て] に対する選択内容にかかわらず、[アサイン先] が設定されているすべてのレコードの後続タスクが自動的に作成されます。

      簡単な説明 監査の目的の簡潔な説明。
      タスク詳細 この監査によって作成された後続タスクに必要な作業の一般的な説明。この監査によって作成されたすべての後続タスクは、この説明を継承します。
      アクティブ この監査スケジュールをアクティブにし、スケジュールされた日時に後続タスクを生成します。フォームのスケジュール フィールド (ただし [最終実行日] を除く) を非表示にし、後続タスクを生成しないようにするには、このチェック ボックスをオフにします。
      実行 監査を生成するスケジュールを実行する頻度。
      • 日次
      • 週次
      • 月次
      • 定期的
      • 1 回
      • オンデマンド
      • [実行] が [毎週] の場合、監査が実行される曜日。
      • [実行] が [毎月] の場合、監査が実行される曜日。日付が 29、30、または 31、またはさらに短い月の場合、監査は月の最終日に実行されます。
      繰り返し間隔 [実行] が [定期的] の場合は、監査が実行される時間、日、またはその両方で入力された頻度です。たとえば、[日間] に [10] および [時間] に [14:00:00] を設定すると、10 日ごとの午後 2 時に監査を実行します。
      開始中 [実行] が [定期的] または [1 回] の場合、監査が実行される日時。
      時刻 [実行] が [日次]、[週次]、[月次]、または [1 回] の場合、監査が実行される時刻 (24 時間形式) です。
      最終実行日 [読み取り専用] 監査が定期的スケジュールまたは手動で実行された最後の日時。監査プレビューでは、このフィールドは更新されません。
      次回実行予定 [読み取り専用] 監査が実行される次の日時。スケジュールを変更すると、このフィールドが再計算されます。
      監査タイプ [読み取り専用] この監査に割り当てられたタイプ。監査タイプは、監査が作成されるアプリケーションに基づいて選択され、以下のものがあります。
      • 適切な状況
      • アーキテクチャ コンプライアンス
      • コンプライアンス
      • スクリプト化
      このスクリプトを実行 実行する監査スクリプト。このフィールドは、監査タイプが [スクリプト化] の場合にのみ使用できます。監査フォームには、監査を実行し、後続のタスクを生成するための指示を含むサンプル スクリプトが含まれています。提供されている方法のリストおよび許可されるパラメーターについては、「スクリプトの方法」を参照してください。