Oracle Internal Controls Managerインプリメンテーション・ガイド リリース11i B25733-01 | ![]() 目次 | ![]() 戻る | ![]() 次へ |
財務目的を達成するために、経営者は内部統制システムが組織のビジネス・プロセスをサポートする上で有効であることを保証する必要があります。また、米国の企業改革法のような規制では、外部監査人は会社の内部統制システムの信頼性に関する所見を表明することを要求されます。
内部統制システムの根本原則は、相互に互換性のないタスク・グループに対してアクセス権を持つユーザーがいないということです。したがって、社内のユーザーのジョブには常に、一連の非互換タスクのうち、1タスクにのみアクセスすることで生じる権利と職責を含める必要があります。
職務分掌統制により、不正行為の機会を提供するタスクの特定の組合せにユーザーがアクセスするという、特定のリスクに対応します。次の例を考えてみます。
買掛管理システムで仕入先を設定できるユーザーが請求書の支払を承認する権限も持っている場合は、会社の資金を自分に対して支払うことができるというリスクが存在します。
不正な消込を防止するには、在庫精度の担当者による循環棚卸調整の認証を禁止する必要があります。
システム開発スタッフが本番業務に関与すると、永続的な詐欺行為を招くおそれがあります。
職務を分掌しても、様々な分野にまたがるスタッフ・メンバー間の共謀というリスクが排除されるわけではありませんが、抑止力としては機能します。また、組織内の作業を分掌することは、誤りによって意図しない損害が生じる可能性に対する防止策としても機能します。したがって、誤りや詐欺行為の範囲を限定するために、非互換タスクを組織の異なるメンバー間で分割します。
Oracle Internal Controls Managerを使用すると、社内の任意のタスクの組合せを非互換として識別し、1人のユーザーがアクセスしている場合にそれをレポートできます。
職務分掌違反が識別された場合、監査人は違反を改善するための修正要求を作成できます。これらの修正要求に優先度を割り当て、様々なユーザーに割り当てて、ライフ・サイクルを通じて追跡できます。
Oracle Internal Controls Managerの「職務分掌」機能は、Oracle E-Business Suiteの職責と機能へのアクセス権に基づいています。
一般的なアプリケーション環境では、Oracle E-Business Suiteの一連の職責に複数のユーザーが割り当てられます。職責によって、アプリケーション権限が定義され、組織での役割に応じたOracle Applicationsの機能とデータにのみユーザーのアクセスが許可されます。職責ごとに、たとえば次へのアクセスが許可されます。
Oracle General LedgerやOracle Planning、会計帳簿など、特定の1つまたは複数のアプリケーション。
ユーザーがナビゲートできるウィンドウの制限付きリスト。たとえば、特定のOracle Planningのユーザーに対して予測品目の入力は許可しても、MDS品目の入力は許可しない職責があります。
ユーザーが実行できる機能の制限付きリスト。たとえば、2つの職責に同じウィンドウへのアクセス権がある場合でも、一方の職責のウィンドウには、他方の職責のウィンドウにはない追加の機能ボタンがある場合があります。
機能はOracle Applicationsのセキュリティ機能であり、特定のアプリケーション機能へのアクセスを制御します。通常、各機能は、ページ、ボタン、タブまたはメニューなどのアプリケーション機能に対応しています。
機能は各モジュールの職務またはタスクに変換されるため、ユーザーが実行できる処理に相当します。ユーザーの職責に特定の機能が含まれている場合にのみ、そのユーザーは機能にアクセスしてタスクを実行できます。Oracle E-Business Suiteアプリケーションには、事前シード済の関連機能が多数用意されています。フォーム機能をタスクとして扱うことで、「職務分掌」機能がOracle E-Business Suiteのセキュリティ・モデルとシームレスに統合されています。
手動機能と外部アプリケーションの機能
Oracle Internal Controls Managerで独自の機能を作成して選択することもできます。これにより、「職務分掌」機能も手動で実行されるタスクに拡張できるようになります。たとえば、夜間警備員によるマスター・キーの使用禁止を指定する必要がある場合は、これらのタスクごとに2つの機能を作成してからユーザーに割り当てます。
他のERPシステムまたはレガシー・システムで実行されるタスクも、この方法で処理できます。サード・パーティ・アプリケーションの機能を使用する場合は、次に示すプロファイル・オプションを設定して、そのシステムのユーザーや職責、機能などをOracle Internal Controls Managerにマッピングする必要があります。マッピングすることによって、外部エンティティがOracleアプリケーションで認識されるようになります。
次の表に、Oracle E-Businessの機能を使用しない場合にシードの必要なプロファイル・オプションを示します。
注意: 機能の使用方法の詳細は、『Oracle Applicationsシステム管理者ガイド』のセキュリティの管理に関する説明を参照してください。
プロファイル・オプション | 説明 | 必須列 | デフォルト値(Oracle) |
---|---|---|---|
AMW: ユーザーの表 | この表またはビューには、アプリケーション・ユーザーについての情報が保存されます。各行には、ユーザーのユーザー名(ユーザーがサインオン画面で入力する名前)が格納されます。 | USER_ID USER_NAME PERSON_PARTY_ID START_DATE END_DATE | FND_USER |
AMW: ユーザー職責の表 | この表またはビューには、アプリケーション・ユーザーに割り当てられた職責についての情報が保存されます。各行には、ユーザーと職責を識別する値が含まれています。また、その職責割当の開始日と終了日も各行に格納されます。各アプリケーション・ユーザーに割り当てられる職責ごとに1行が必要です。Oracle Application Object Libraryでは、この情報をもとにユーザーがアクセスできるフォームとメニューが決定されます。 | USER_ID RESPONSIBILITY_ID RESPONSIBILITY_APPLICATION_ID START_DATE END_DATE CREATED_BY | FND_USER_RESP_GROUPS |
AMW: 職責の表 | この表またはビューには、職責についての情報が格納されます。各行には、その職責が属するアプリケーション、およびその職責が使用するメイン・メニューを識別する値が含まれます。サイトでの職責ごとに1行が必要です。 | RESPONSIBILITY_ID RESPONSIBILITY_KEY APPLICATION_ID MENU_ID START_DATE END_DATE | FND_RESPONSIBILITY |
AMW: 職責名のビュー | これは前述の表のビューです。 | RESPONSIBILITY_ID RESPONSIBILITY_KEY APPLICATION_ID MENU_ID START_DATE END_DATE RESPONSIBILITY_NAME | FND_RESPONSIBILITY_VL |
AMW: 除外機能ルールの表 | この表またはビューには、機能セキュリティ・メニューのセキュリティ除外ルールが格納されます。セキュリティ除外ルールは、特定の職責ではアクセスできない機能とメニューのリストです。各行には、値がルール・タイプに依存する処理識別子が含まれます。 下の擬似コードで、Fは機能、Mはメニューをそれぞれ表します。(ACTION_ID=FUNCTION_ID from AMW_FORM_FUNCTIONS if RULE_TYPE='F' or ACTION_ID=MENU_ID AMW_MENUS if RULE_TYPE='M') | RESPONSIBILITY_ID ACTION_ID RULE_TYPE APPLICATION_ID | FND_RESP_FUNCTIONS |
AMW: 機能名のビュー | この表またはビューには、フォーム内での機能のグループ化についての情報が格納されます。各行には、機能識別子、機能名、アプリケーション識別子が含まれます。機能ごとに1行が必要です。 | FUNCTION_ID FUNCTION_NAME APPLICATION_ID TYPE USER_FUNCTION_NAME MAINTENANCE_MODE_SUPPORT CONTEXT_DEPENDENCE | FND_FORM_FUNCTIONS_VL |
AMW: メニューの表 | この表またはビューには、「ナビゲート」ウィンドウに表示されるメニューのリストが表示されます。これらのメニューは、機能セキュリティの職責を定義する際にシステム管理者によって指定されます。各行には、メニュー名、識別子が含まれます。各アプリケーションのメニュー(およびサブメニュー)ごとに1行が必要です。 | MENU_ID TYPE MENU_NAME | FND_MENUS |
AMW: メニュー名のビュー | これは前述の表のビューです。 | MENU_ID TYPE MENU_NAME USER_MENU_NAME | FND_MENUS_VL |
AMW: メニュー・エントリの表 | この表またはビューには、プロファイル・オプション「AMW: メニューの表」で指定された表の個々のエントリについての情報が格納されます。各行には、エントリが属するメニューを識別するID番号、メニュー上でのエントリの表示順序(同一メニュー上の他の選択肢に対する相対的な順序)を決定する連番、そのエントリに添付されたサブメニューまたは機能(あるいその両方)が含まれます。「ナビゲート」ウィンドウの各メニューのエントリ(メニュー選択肢)ごとに1行が必要です。 | MENU_ID ENTRY_SEQUENCE SUB_MENU_ID FUNCTION_ID GRANT_FLAG | FND_MENU_ENTRIES |
AMW: メニュー機能関連のフラット・ビュー | この表には、プロファイル・オプション「AMW: メニュー・エントリの表」で指定された表からの情報がまとめられます。この情報によって、各機能がどのメニューに存在するかを実行時に容易に参照できます。前述の表の階層をフラットな形式に縮小します。除外は考慮されません。 | MENU_ID FUNCTION_ID GRANT_FLAG | FND_COMPILED_MENU_FUNCTIONS |
Oracle Internal Controls Managerを使用すると、相互に互換性がない職責と機能に社内のユーザーがアクセスできるかどうかを効率的にチェックできます。このアプリケーションによって、容易に非互換タスクを事前にモニタリングしてレポートできます。
注意: ユーザーは、Oracle人事管理システムでの従業員には限定されません。このアプリケーションでは、Oracle Applicationsでユーザーとして定義されたすべての個人(FND_USER表に登録されたユーザー全員)が認識されます。
組織内の非互換職責または非互換機能の特定の組合せを制約として識別できます。アプリケーションでは、ユーザーがこのような複数の非互換タスクへのアクセス権を持つことで制約に違反している場合に、それをレポートできます。制約の違反が検出された場合は、経営者に対し修正要求を開始し、非互換タスクを持つユーザーの職務を変更して処置を講じることができます。
次のダイアグラムに、Oracle Internal Controls Managerにおける職務分掌の制約の実装ステップを示します。
職務分掌の制約を作成して違反を修正するステップは、次のとおりです。
職務分掌の制約の定義
制約違反のチェック
修正要求の開始
非互換機能を使用するユーザーの職務の変更
これらのステップについては、次の各項で実例をあげて説明します。
制約は、次のいずれかを相互に非互換に設定することによって作成します。
複数の職責
複数の機能
したがって、最初の作業は制約、つまり、非互換のジョブおよび職務が同一ユーザーによって実行されないようにシード済レジストリを定義することです。
この例では、競合する職務が1セットのみであるとします。組織では、発注を作成できるユーザーには請求書の入力が、また請求書を入力できるユーザーには発注の作成ができないことが求められています。
注意: 非互換職責および機能を複数のアプリケーション・モジュールにまたがって指定できます。たとえば、Oracle PurchasingとOracle Payablesにおける職責や機能を非互換に設定できます。
トピック | ナビゲータ・パス |
---|---|
職務分掌の制約の作成 | 「内部監査人」(またはそれに相当する)職責を使用して、「職務分掌」タブ、「制約」サブタブの順にナビゲートします。 |
職務分掌の制約を次の手順で定義します。
a. 制約の基本属性の入力
b. 複数の非互換機能または職責の設定
c.職責権利放棄またはユーザー権利放棄の設定(オプション)
この例での制約名は、「PO-Invoice SOD」です。
次の表に、「職務分掌の制約」ページの各選択フィールドの詳細を示します。
フィールド | 詳細 |
---|---|
リスク | この制約に違反した場合に発生するリスク。値リストには、リスク統制ライブラリ内のシード済リスクがすべて表示されます。 |
「違反の定義」ラジオ・ボタン | 違反となるのは、次のいずれかの場合です。 「非互換機能または職責のセットのすべての機能または職責をユーザーが所有」 「非互換機能または職責のセットから2つの機能または職責をユーザーが所有」 実際の非互換機能と非互換職責のセットは、次のステップbのウィンドウで定義します。 |
非互換職責の設定: 制約に職責が含まれる場合、Oracle E-Business Suiteに登録されたアプリケーションの既存の職責がすべて使用可能です。この例で職責が使用されると、一般的なPurchasingとPayablesの職責は相互に非互換に設定されます。
非互換機能の設定: Oracle E-Business Suiteに登録されたアプリケーションの既存の機能がすべて使用可能です。
フィルタを入力することによって、表示する機能のリストの制限や、特定の機能の検索を行うことができます。Oracle Internal Controls Managerには、次の3つのフィルタが用意されています(結果の機能リストは200エントリに制限されます)。
職責
タイプ
機能名
機能はタイプ別に分類されます。標準の機能タイプの例を次に示します。
フォーム: Oracle Applicationsのフォーム機能は、「フォーム」タイプで登録されています。
サブ機能: フォームまたはその他の機能にセキュリティ機能を提供するためにメニューに追加(プロンプトなし)されるサブ機能です。
JSP: Oracle Self–Service Web Applicationsスイートの一部の製品で使用される機能。通常JSP機能です。
WWW: Oracle Self–Service Web Applicationsスイートの一部の製品で使用される機能。通常PL/SQL関数です。
注意: 機能タイプの詳細は、『Oracle Applications開発者ガイド』を参照してください。
制約を定義する際には、関連する機能を分離するために、「タイプ」と「名称」のうち少なくとも一方が判明している必要があります。
この例では、請求書の入力と発注の作成はともにOracle PayablesとOracle Purchasing内におけるフォームに相当するため、この例では機能のタイプはともに「フォーム」となります。
オプションで、制約の例外を「権利放棄」の形式で設定することもできます。「職責権利放棄」と「ユーザー権利放棄」は、制約(設定中の制約)を適用しない1つ以上の職責とユーザーを指定します。たとえば、発注にアクセスできるユーザーが請求書の入力もできるという全社的なルールからPayablesのスーパーユーザーを除外する場合があります。
この2種類の権利放棄は明確なものです。つまり、制約は、「ユーザー権利放棄」に記載された個人によって違反したとみなされることも、「職責権利放棄」に記載された職責にアクセスできる個人によって違反したとみなされることもありません。権利放棄は、権利放棄の「終了日」を入力することによって、特定の日付範囲に制限されることに注意してください。
注意: 職責制約にはユ―ザー権利放棄のみを設定できます。
職務分掌の制約を手動で入力するかわりに、Web ADIを使用して制約をアプリケーションにインポートできるようになりました。Web ADIには、固有のスプレッドシート・インタフェースの使用など多くの長所があります。
トピック | ナビゲータ・パス |
---|---|
職務分掌の制約のインポート | 「内部監査人」(またはそれに相当する)職責を使用して「職務分掌」タブをクリックし、「インポート」サブタブをクリックします。 |
「制約のインポート」ハイパーリンクを使用し、制約詳細をアプリケーションにインポートします。Oracle Internal Controls Managerでは最初にビューワ(Excel1997/2000)などのユーザー設定を選択する必要があります。次にスプレッドシートが表示され、これらのセルに値を入力またはコピーできます。最後に、メニュー・バーから「Oracle - アップロード」を選択して、インポート処理を開始します。
次の表に、インポート・スプレッドシートのフィールドを示します。
フィールド名 | 必須 | 検証 |
---|---|---|
制約名 | Yes | N/A |
開始日 | Yes | MM-DD-YYYY |
違反の定義 | Yes | 機能: すべて: 非互換機能のセットのすべての機能をユーザーが所有 機能: 相互排他: 非互換機能のセットから2つの機能をユーザーが所有 職責: すべて: 非互換職責のセットのすべての職責をユーザーが所有 職責: 相互排他: 非互換職責のセットから2つの機能をユーザーが所有 |
説明 | No | N/A |
終了日 | No | MM-DD-YYYY |
リスク名 | No | OICMリスク・ライブラリにおける有効なすべてのリスク名 |
非互換機能 | No | Oracle E-Business Suiteに登録されたアプリケーションの既存のすべての機能 |
非互換職責 | No | Oracle E-Business Suiteに登録されたアプリケーションの既存のすべての職責 |
注意: インポート・スプレッドシートを使用して制約権利放棄をインポートすることはできません。職務分掌の制約をアプリケーションにインポートした後で、この制約を問い合せて、職責権利放棄またはユーザー権利放棄を必要に応じて追加してください。
Web ADIにより、スプレッドシートからのデータがAMW_CONSTRAINT_INTERFACEインタフェース表にアップロードされます。次に、コンカレント・プログラムにより、インタフェース表から実表にデータがアップロードされます。インポート処理中にエラーが発生すると、エラーとしてフラグが設定され、エラー・メッセージが出力されます。
プロファイル・オプション「AMW: 制約 - インポート後に削除」を「Yes」に設定すると、Web ADIを介して正常にインポートされた統制がインタフェース表から削除されます。
Web ADIをExcel 2002(XP)で動作させる手順は、次のとおりです。
Excel 2002を開きます。
「ツール」->「マクロ」->「セキュリティ」->「信頼のおける発行元」を選択します。
「Visual Basic プロジェクトへのアクセスを信頼する」を選択します。
ここで、コンカレント・プロセス「制約の違反のチェック」が起動し、同じユーザーに属している非互換機能の有無がチェックされます。
トピック | ナビゲータ・パス |
---|---|
職務分掌の制約違反チェックの起動 | 「内部監査人」(またはそれに相当する)職責を使用して「職務分掌」タブ、「職務分掌の制約違反」サブタブの順にナビゲートします。 違反のチェックボタンをクリックします。 |
このプロセスを実行する場合は次のオプションに注意してください。
コンカレント・プログラムを実行して、「すべて」または1つから4つまでの制約をチェックできます。
このプログラムを、事前定義済のスケジュールに基づいて自動的に繰り返すように設定できます。定期スケジュールを使用すると、アプリケーションのユーザー間で非互換機能を事前にモニタリングしてレポートできます。
1人以上のユーザーに通知を送信できます。この通知により、プロセスの発行と発行のステータスがユーザーに伝えられます。
コンカレント・プロセス「制約の違反のチェック」は大規模なインストレーションでは実行に数分間かかる場合があるため、「職務分掌」->「要求」サブタブには、プロセスをモニターする機能が用意されています。そのため、要求のステータスを表示するために「システム管理者」の職責を使用する必要ありません。
コンカレント・プロセスが完了すると、Oracle Internal Controls Managerによって制約違反の詳細名簿が提供されます。「職務分掌」->「制約違反」ウィンドウでは、このような違反を制約名で検索できます。
「制約の違反のチェック」プロセスの実行履歴が、このウィンドウで保守されることに注意してください。そのため、修正処理(次の項で説明)を実行すると、特定の制約の「違反ユーザー数」の値が減少していきます。
違反ステータス: 次の表に、この列の詳細を示します。
ステータス | 詳細 |
---|---|
クローズ済 | 違反ユーザー数が0(ゼロ)の場合 |
適用不可 | 「制約の違反のチェック」プログラムの前回の実行以降に制約が変更された場合 |
オープン | 違反ユーザー数が0(ゼロ)より大きい場合 |
ドリルダウンして特定の制約に違反する各ユーザーの詳細を検索し、そのユーザーが保持する非互換ジョブ機能のリストを表示します。「権利放棄済ユーザー」サブタブには、制約の違反から除外するように設定されたすべてのユーザーが表示されます。
ユーザー違反: 「職務分掌」->「ユーザー違反」ウィンドウでは、特定のユーザーが違反しているすべての制約を検索することもできます。
職務分掌の違反が検出された場合は、「修正要求」を開始して違反を修正し、ユーザーが組織内の非互換タスクへのアクセス権を持っていることに伴うリスクを軽減できます。この例では、「購買」と「請求書」の両方の機能にアクセス権を持つユーザーの職責から、いずれか一方の機能を削除します。
「修正要求」は、主として修正処理の要求を開始および追跡するプラットフォームと考えることができます。このような要求を開始しても、職責と機能へのアクセス権が違反ユーザーから自動的に削除されるわけではありません。最終的には、システム管理者(またはそれと同等の職責を持つ個人)が違反ユーザーの職責を変更し、ユーザーが競合する機能と職責にアクセスできないようにする必要があります。
「修正要求」を特定のユーザーに割り当て、アプリケーションで追跡できます。
注意: 「修正要求」の設定の詳細は、「Oracle Internal Controls Managerにおける修正要求」を参照してください。
トピック | ナビゲータ・パス |
---|---|
修正要求の作成 | 「内部監査人」(またはそれに相当する)職責を使用して「職務分掌」タブをクリックし、「制約違反」サブタブをクリックします。このウィンドウには、違反の詳細リストが表示されます。 特定の制約違反の「修正要求」アイコンをクリックしてから「作成」ボタンをクリックするか、 違反へドリルダウンし、「修正要求」ハイパーリンクをクリックしてから「作成」ボタンをクリックします。 |
次の表に、「修正要求の作成」ウィンドウの各選択フィールドの詳細を示します。
フィールド | 詳細 |
---|---|
修正要求番号/修正要求名称 | 制約違反の修正要求を識別および追跡するためのユーザー定義番号および名称。 |
優先度 | ユーザー定義優先度: 「懸案管理」機能を使用してシード(第12章を参照) |
事由 | ユーザー定義事由: 「懸案管理」機能を使用してシード(第12章を参照) |
注意: さらに明確化するために、修正要求に文書を添付することもできます。
修正要求レポート: 修正要求を作成(「作成」ボタンを使用)するかわりに、修正要求の詳細に関するアドホック・レポートを作成できます。
トピック | ナビゲータ・パス |
---|---|
修正要求レポートの作成 | 「内部監査人」(またはそれに相当する)職責を使用して「職務分掌」タブをクリックし、「制約違反」サブタブをクリックします。このウィンドウには、違反の詳細なリストが表示されます。特定の制約違反の「修正要求」アイコンをクリックし、「レポートの表示」ボタンをクリックします。 最後に、「レポートの作成」ボタンをクリックします。 |
Oracle Internal Controls Managerでは、このレポートを表示する前に、レポート生成に関してレポート基準と結果書式を選択する必要があることに注意してください。
基準と結果は、「要求番号」、「割当先」、「作成者」、「要求者」、「作成日」、「希望入手日」などのフィールドに基づきます。結果は次の4つのセクションに表示されます。
担当
添付
承認
処理ログ
トピック | ナビゲータ・パス |
---|---|
修正要求の追跡 | 「内部監査人」(またはそれに相当する)職責を使用して「職務分掌」タブをクリックし、「制約違反」サブタブをクリックします。このウィンドウには、違反の詳細なリストが表示されます。 特定の制約違反の「修正要求」アイコンをクリックし、関連要求へドリルダウン(要求番号をクリック)します。 |
「修正要求要約」ウィンドウは、要求の詳細とステータスの遷移を表示する掲示板の役割をします。
優先度の変更、コメントの転記、取消、促進、保留待機中、再割当、修正の更新およびコメントの要求など、様々な処理があります。このウィンドウでは、Oracle Internal Controls Managerによって修正要求の詳細な履歴が保守されます。