はじめに
TL;DR
- IT統制は「監査のためのルール」じゃなくて、インシデントを未然に防ぐ仕組み
- 統制を疎かにすると「誰でも本番触れる」「スクリプトが野良化」「原因調査が進まない」といったトラブルが現実に起きる
- Git管理・権限管理・変更管理を意識するだけで事故はぐっと減る
- GASをGitHubで管理するなら
claspが便利
対象読者
- 社内システムやサービス開発に関わるエンジニア
- 監査や内部統制に馴染みのない若手エンジニア
- 「統制って結局なんのため?」と思っている人
内部統制(IT統制)とは?
内部統制とは、会社の業務を正しく・安全に行うための仕組みです。
その中で IT統制 は、システムやデータを安全に扱うためのルールや仕組みを指します。
上司と部下の会話で学ぶ「統制」
ある日の会話
若手エンジニア(自分)
「監査で『統制が弱い』って言われたんですけど、正直ピンとこなくて…。なんでそんなに大事なんですか?」
上司
「じゃあ質問。君のPCにしかない本番用スクリプトが壊れたらどうする?」
若手
「……復元できませんね」
上司
「そう。つまり“事故”だ。統制ってのは、こういう事故を未然に防ぐための仕組みなんだよ」
統制がないとどうなる?
上司
「統制を疎かにすると、こんなことが起きるんだ」
-
誰でも本番触れる状態
共通アカウントや残ってる退職者アカウント。
👉 何かあっても『誰がやったのか』追えない。 -
本番スクリプトが野良化
誰かのローカルPCで直接更新。
👉 バージョンも履歴もなく、壊れたら復元不能。 -
EUC(Excel/スプレッドシート/GAS)のブラックボックス化
「誰でも編集OK、履歴なし」の地獄。
👉 退職と同時にシステム消滅。 -
障害が起きても原因不明
変更管理なしで「いつ壊れた?」が分からない。
👉 調査に時間がかかって被害拡大。
若手
「…けっこうリアルに怖いですね」
上司
「だろ? 監査云々じゃなくて、俺たち自身を守るためでもあるんだ」
統制があるとどうなる?
上司
「逆にちゃんと統制すると…」
- 事故が減る:誤操作や改ざんが起きにくい
- 調査が早い:変更履歴が追える
- 信頼される:属人化を防げる
若手
「つまり、エンジニアの仕事が“楽になる”ってことですね」
上司
「Exactly!」
エンジニアが意識すべき統制ポイント
1. 本番スクリプトは必ずGit管理
- GitHubやGitLabで管理
- Pull Requestでレビュー
👉 ヒューマンエラーも改ざんも防げる
2. EUC(Excel/スプレッドシート/GAS)も対象
若手
「え、スプレッドシートも対象なんですか?」
上司
「当然。便利だけど事故の温床だからな」
- バージョン管理
- 更新権限の制御
- 変更ログの確保
特にGASは clasp を使うとGitHub管理ができる。
👉 誰がいつどう変えたか追えるように。
3. 権限は「最小限」で
- 管理者権限は必要な人だけ
- 退職者アカウントは即削除
👉 「誤操作や不正を仕組みで起きにくくする」が基本。
まとめ
若手
「なるほど、統制って監査のためじゃなくて、僕ら自身を守る仕組みなんですね」
上司
「そういうこと。『このスクリプトGitで管理してる?』『この権限本当に必要?』って一度立ち止まるだけで、事故はかなり減らせる」
若手
「よし、さっそくGASを
claspで管理するところから始めます!」