WEBマガジン

「内部統制におけるアクセスコントロールの効率化 その3」

2013.11.11 株式会社オージス総研  栗田 健史

 このシリーズは"内部統制におけるアクセスコントロールの効率化"をテーマとして初回及び第2回では、物理アクセスコントロールを網羅的に整理する方法、論理アクセスコントロールをアカウントのライフサイクルに沿って把握することで分かりやすいコントロールが実装できるということや、アプリケーションアカウントの全体像を例として、ID・パスワード設計、権限設計、ID・アクセス権の申請・登録についてお話をしました。

 第3回では、その続きとして人がシステムを利用する段階の認証・認可について考えます。

 さて、認証・認可って何なのでしょうか?何かよく似た言葉ですし、あまり普段使う言葉でも無いのでピンとこないですね。また、本文のテーマでもある"アクセスコントロール"にもよく似た言葉があり、分かりにくい原因かと思います。例えば、アクセス管理、アクセス制御、アカウント管理、ID管理、アイデンティティ管理、IDM、パスワード管理、権限管理 等々 

 少し、用語を整理しましょう。

 先ず、アカウント(account)です。英語のaccountを単純に訳すと"勘定""口座""顧客"などですが、アカウントって何ですか?と聞かれると、さて、なんて答えましょう。権限のこと?IDのこと?

 私はこれを以下のように整理して考えています。

アカウントユーザーがシステムを利用する際に必要なすべての情報で構成されたレコード(群)。

図1 「アカウント」

 アカウント(レコード)の要素(代表的な例)

項目名内容
ユーザーID利用者をシステム内で一意に識別するための識別符号
パスワード操作者がユーザーIDを付与された本人であることを確認するための合言葉
属性情報ユーザーグループ、部署、所属など
個人情報氏名、生年月日、性別など
ロールユーザーの役割を表すもの。役割に応じたアクセス権の組み合わせ
アクセス権システム資源(プログラム、データ、サーバー、ディレクトリ、プリンターなど)に対するアクセス許可の種類(読取、書込、実行など)
失効フラグアカウントが有効か無効かを識別するためのフラグ

図2 「アカウント(レコード)の要素」

 これで少し明確になったでしょうか。アカウントは、ユーザーID、パスワード、アクセス権などの情報で構成されたレコード(群)であると言うことです。通常アプリケーションでは、アカウント用のデータを社員マスターや担当者マスターとして作成します。一方Windows のようなOSレベルでのアカウントは、Windows2000サーバーの場合、Active Directoryのユーザー情報ですし、ローカルにログインする場合はコントロールパネルのユーザーアカウントで表示される情報になります。

 さて、ここからが本題です。下図"アプリケーションのアクセスコントロール全体像"で示すとおり、人が日々システムを業務利用する際(図の青線で囲んだ部分)の最初のステップはログインです。このログインには2つのステップがあります。それが認証(Authentication)と認可(Authorization)です。また、ログインからログアウトまでの記録はログとして保管(Accounting)します。これらの3つのアクセス制御のためのセキュリティ機能はそれぞれの頭文字を取って"AAA(トリプルエー)"と呼ばれています。

アプリケーションのアクセスコントロール全体像
図3 「アプリケーションのアクセスコントロール全体像」

・認証(Authentication)
 現在、認証の一般的な方法はユーザーIDとパスワードの組み合わせです。個人ごとに与えられた識別符号であるユーザーIDとその本人しか知らないパスワードによってシステムにログインすることにより、利用者が業務上承認された本人であることを確認します。この本人であることの確認を認証と言います。言い換えると"システムを利用しようとしている人が本当にその人かを確認すること"と言えます。

 しかし、ID・パスワードによる認証では、利用者が本当に業務上承認されたユーザーか否かを証明する確実な仕組みとは言えません。例えば、利用者が処理を代行してもらうために意図的に他の人にID・パスワードを教えている場合、利用者がID・パスワードを付箋に書いて机の上に貼っていたものを第三者が使う場合、IDと同じ文字列など誰でも想定可能なパスワードを設定している場合などです。あくまでも"パスワードは本人しか知り得ない"ことが前提で有り、パスワードが他の人に分かってしまうと "なりすまし"の原因になります。これを防止するコントロールとしては

 など、パスワードが他者に漏れることが無く、不正利用しにくい仕組みや運用を構築することです。また、認証方式そのものを見直すこともコントロールを強化する一つの方法です。以下に認証方式の代表的な例を示します。また、一つの方式だけで無く組み合わせて認証する多要素認証はより強力なコントロールとなります。

表1 「認証方式とそのメリット、デメリット」

方式メリットデメリット
知識認証(本人しか知り得ない知識を確認)ID・パスワード・装置に係わるコストが掛からない・パスワードを他者に知られる可能性が高い。(意図的に教える、記入していたものを見られる、誰でも想定できる安易なパスワードを使うなど)
・複雑なパスワード、多数のパスワードは覚えられない
・パスワードの定期的な変更や、ロックアウトした場合の解除など維持運用が必要
所有物認証(本人しか持っていない所有物の情報を確認)ワンタイムパスワード(トークン)・安全性は比較的高い
・クライアント側では読み取り装置や特殊なソフト不要
・持っていないと認証できない
・持ち歩くため紛失する可能性がある
・ハードウェアの場合は導入コストが掛かる、貸出管理が必要
・ワンタイムパスワード発生用の暗号鍵の漏洩
ICカード・安全性は比較的高い
・入力が不要のため操作が簡単
・持っていないと認証できない
・持ち歩くため紛失する可能性がある
・クライアントに読み取り装置が必要
生体認証(本人しか持ち得ない身体的な特徴を確認)指紋認証・覚えたり持ち歩いたりしなくてよい
・比較的安全性は高い・認証の操作が簡単
・読み取り機がコンパクト(iPhoneや携帯電話にも導入されている)
・指の状態によっては読み取れない可能性がある
・読み取り装置が必要なためコストがかかる
・なりすましの可能性がある
・プライバシーの問題
静脈認証・覚えたり持ち歩いたりしなくてよい
・比較的安全性は高い
・認証の操作が簡単
・読み取り装置が光の影響を受けやすい
・読み取り装置が大きい、高価・プライバシーの問題
虹彩認証・覚えたり持ち歩いたりしなくてよい
・比較的安全性は高い
・認証の操作が簡単(両手がふさがっていても認証できる)
・コンタクトレンズの影響・読み取り装置が大きい、高価
・プライバシーの問題

・認可(Authorization)
 認可は、認証済みのユーザーに対して、コンピュータリソースの利用権限(アクセス権)を与えることです。
 ここでのコンピュータリソースとは、データ、プログラム、コンピュータハードウェア、アプリケーションなど、利用権限(アクセス権)とは、データに対する"読み/書き/実行"、プログラムの実行可否、ファイルやディレクトリの作成・変更・削除などです。
 ユーザーとコンピュータリソースの利用権限(アクセス権)との関連付けは、業務上個々のユーザーに必要な範囲で承認されたアクセス権がアクセス設定により予め登録されます。具体的には、アカウント自身に権限設定を持つ場合や、権限の組み合わせが複雑な場合は別途、権限プロファイルやアクセス制御リスト(ACL)などに権限設定が登録されます。

本番環境データへのアクセス方法
図4 「本番環境データへのアクセス方法」

 上図は、内部統制として守るべき本番環境のデータにどのようにしてアクセスするかを概念的に表したものです。アプリケーションユーザーは、通常アプリケーションプログラムを介してデータにアクセスします。従って、どのユーザーにどのプログラムの実行を許可するかがポイントとなります。一方、情報システム部でオペレーションをする人たちは、プログラムを介さずに直接データにアクセスします。これは所謂"本番データの直接修正"ですが、この場合はどのデータに誰がアクセス出来るかを設定します。また、誰が何にアクセスしたかを確認するためにログが必要ですが、アプリプログラムとデータではアクセスする対象が異なりますので、ログもそれぞれ必要です。これらのことを踏まえた上で、プログラムを介してアクセスする場合・データに直接アクセスする場合における予防的統制、発見的統制をリスクに応じてバランスよく構築することが効率化のポイントです。。

『WEBマガジン』に関しては下記よりお気軽にお問い合わせください。

同一テーマ 記事一覧

「システム監査の進め方」

2017.08.28 ITガバナンス 株式会社オージス総研  栗田 健史

「内部統制におけるアクセスコントロールの効率化 その2」

2012.09.11 ITガバナンス 株式会社オージス総研  栗田 健史

「リスクをどのようにして見つけますか?」

2011.10.04 ITガバナンス 株式会社オージス総研  栗田 健史

「内部統制におけるアクセスコントロールの効率化」  

2010.10.03 ITガバナンス 株式会社オージス総研  栗田 健史