さてさて、本日はITGCとITACについてエントリー。
ITGCとITACの違いって、分かっているようでいて分かってない。分かっていないようでいて分かってない。
結局わかっていないわけです。そんな中昨日システム監査部門の方にその違いについてレクチャーしてもらったので、ちょっとまとめてみましょう。

Summary
1.ITGCとITACの関係
2.ITGCってなんで検証がいるの?
3.どうやってITGCを検証するの?

1.ITGCとITACの関係
 ITGCとITAC,関係を図示するとこんな感じになります。

60分で世界征服

 基本的に一つのサイクルにつきITACは一つ存在しており、ITGCはSystem毎に存在しています。
このため、2つのITACで同じSystemを利用している場合にはITGCがかぶることになりますが、別個のSystemを利用している場合には、別のITGCとなります。
ITGCというのは、各ITACを支える基盤なんですね。
ここでITACとITGCについて、簡単に説明したいと思います。

・ITAC
 ITACとは、各サイクルを支えているアプリケーションのことをさします(ITを利用していない場合は存在しません)。
例えばアプリケーションを編集したときにEdit historyが残るというシステムによって、不正な入力を防ぐという統制。
このEdit historyを残すことなんかが、ITACになります。
他にも手数料の自動計算が実施されるとかが、これにあたります。

・ITGC
 ITGCとは、IT全般統制といわれるように、各アプリケーションを支える基盤となる統制をいいます。
会社の使っている会計ソフトなんかがこれにあたりますね。
ITGCを検証するってことは、すなわちシステムが適切に運用される状態ができているかを検証するということになります。

2.ITGCってなんで検証がいるの?

 勘定科目が正しく反映されるんだったら、ITACだけみればいいじゃーん。ITAC25件みればいいじゃーん、という考え方があります。
ではちょっと話を戻してみましょう。ITACとして、アプリケーションを編集した時にEdit historyが残るとします。
これで確かに不正は防げますよね(完全にではないですよ、もちろん)。
さてこのEditしかしこのEdit history、これがあるだけで大丈夫ですか?
大丈夫ではないですよね。誰かが書き変えてしまったら意味がありません。
そこでその大本となるITGCのチェックが必要になるわけです。
ITGCを検証するのは、ITACに依拠したいがためなんですね。

3.どうやってITGCを検証するの?

 さてこのITGC。ではどうやって検証するんでしょうか。
ITGC検証のキーエリアは四つです。

  ITGCのKey area
 ①PD   プログラムの開発
 ②PC   プログラム変更
 ③CO   コンピューターオペレーション(運用)
 ④APD  プログラム・データへのアクセス

 ではそれぞれ、どのような検証をするか追っていきます。

 ①PD
 プログラムを1から開発するなんて時に検証します。
「仕様書を適切に反映させている」というコントロールがあるかどうかを確認することで検証します。

 ②PC
 既存システムのマイナーチェンジ。殆どの場合システムが変わるのはこれに当たります。
「変更依頼があった際に、プログラムが正当かどうかテストする」というコントロールがあるかどうか確認することで検証します。
ちなみにこのテスト、よくあるのがUATってやつですね。
ユーザーアクセプタンステスト。ユーザーサイドとシステムサイドが一緒にテストすることを指します。

 ③CO
 チェックポイントは三つ。
 ・日々のバッチプロセスのモニタリング
  これは仕訳データのバッチ送信などが当たります。ちなみに「仕訳が正しいかどうか」自体を見るのはITACですね。
 ・災害管理
  基本的に会社にのっかるかノンキーです。
 ・バックアップ
  これも基本は災害管理と同じですね。

 ④APD
 これも三つのチェックポイント
 ・Systemへのアクセス
 ID checkがこれに当たりますね。
 ・たな卸し
 退職や転勤等があった場合に、アクセス権限が適切に棚卸しされているかという検証です。
 ・モニタリング
 特に特権ですね。システムアドミが持っている権利によりシステムの書き換えが起こっていないかを、logのモニタリングにより検証します。

 と、いうわけでいつもよくわかっていないITについてのエントリーでした。
ITACについてはまた今度かいてみます。