○ 認証と認可はどう違う?「ID」にまつわる用語をすっきり理解。
ID(IDentitiy、アイデンティティー)管理について理解を深める上で、まず基本的な用語を確認しておこう。ここではデータ保護に必要不可欠な「認証」「認可」、IDの性質を知る上で理解する必要がある「エンティティー」「アイデンティティー」「クレデンシャル」、実際のネットワークにおいてID管理を担う仕組みである「IDP(IDentify Provider)」「IDaaS(IDentity as a Service、アイダース)」を解説する。いずれもID管理で頻繁に使われる用語だ。
混同しがちだが明確に異なる。
まずID管理において重要な「認証」と「認可」だ。両者はしばしば混同されて使われるが、明確に意味が異なる。
認証はもともと、行為や文書などの正当性を公の機関が証明することを指す。ID管理の文脈では、システムやデータなどのリソースへアクセスしようとする利用者が、本人であると確認することを意味する。
一方認可の原義は、公共機関が法人や私人の行為を認め、法律上の効力を与えることである。ID管理においては、利用者がそのリソースにアクセスする権利を与えることを指す。
ある利用者がリソースを利用しようとしたとき、正当な権利があるかどうかを識別する必要がある。ネットワーク環境では利用者を表現するのがIDである。そのIDと利用者が正しく結びついているかを判断するのが認証であり、そのIDで該当リソースにアクセスする権利があるかどうかを判定し、あればアクセスを許可するのが認可である。
従ってIDを正しく管理できていなければ正しい認証と認可ができなくなる。IDがセキュリティーの基本であることがよく分かるだろう。
IDはアイデンティティー。
続いてID管理でよく出てくるが分かりにくいエンティティー、アイデンティティー、クレデンシャルを説明しよう。
まずエンティティーは、ID管理においてはリソースにアクセスする主体を指す。具体的にはあるデータにアクセスしようとする利用者自身や、あるサービスへデータの連携を求める別のサービスなどを指す。
アイデンティティーは個々のエンティティーを識別するための情報である。企業システムの利用者であれば氏名や生年月日、所属、役職などをまとめたものとなる。エンティティーの特徴を抜き出した情報がアイデンティティーと考えると理解しやすい。
ID管理において、IDという言葉はこのアイデンティティーを指すのが一般的だ。ただしシステム上のユーザー名など、あるモノを識別するために付ける識別子(Identifier)もIDと呼ぶので注意したい。例えば「認証時にIDを入力する」「社員ごとに一意のIDを作成する」といった文脈では、識別子を指す。以下では特に明記しない限り、アイデンティティーの意味でIDを使う。
クレデンシャルはエンティティーがリソースにアクセスする上で、本人であると確認するための情報である。「資格情報」と呼ばれる。例えば識別子(ユーザーID)とパスワードの組み合わせや、電子署名用の秘密鍵と公開鍵のペアなどである。
IDPの代表はActive Directory。
IDを管理するサービスやソフトウエアはIDPと呼ぶ。直訳すると「IDの供給者」となる。IDPはエンティティーに対応するIDを保持する。利用者が入力した識別子(ユーザーID)とパスワードなどのクレデンシャルによって利用者を認証し、サーバーなどのリソースへのアクセスを認可する。
IDPは利用者によるリソースへのアクセスを適切に制御する際に中心的な役割を果たす。その意味で企業のセキュリティーにおける中心といえよう。
社内ネットワークにおけるIDPのデファクトスタンダードが米マイクロソフトのActive Directory(AD、アクティブ ディレクトリー)だ。ADは企業や組織を1つのドメイン(領域)として見なし、「ドメインコントローラー」がドメイン内のリソースへのアクセスを制御する。
OU単位でオブジェクトを制御。
ADはドメイン内のコンピューターやフォルダーといったリソースを「オブジェクト」として管理する。IDに当たるオブジェクトを「ユーザーアカウント」と呼ぶ。社員Aを「employee A」、管理者Aを「manager A」といったように、利用者1人ひとりに一意のユーザーアカウントを与える。
ドメインには組織に対応するOU(Organizational Unit)を定義する。例えば人事部であれば「Human Resource」、営業であれば「Sales」といった具合に組織ごとにOUを作成する。OUごとにグループポリシーを適用することで、配下のコンピューターやユーザーアカウントの設定などを一括制御できる。
リソースへのアクセス権は、「セキュリティーグループ」で管理する。ユーザーアカウントを組織や役職に応じて、設定するセキュリティーグループに所属させる。人事システムへアクセスできるのはセキュリティーグループ「人事」に所属するユーザーだけ、社員の評価システムへアクセスできるのはセキュリティーグループ「管理職」に所属するユーザーだけ、といったようにアクセス権を一括して設定できる。
IDaaSは多様な機能を提供。
クラウドサービス版のIDPがIDaaSである。IDaaSには主要な機能として「ID管理」「ID連携」「認証」「認可」の4つがある。
IDaaSはクラウドサービス版IDPなので、ADとは重視される部分が少し異なる。例えば現在では、「多要素認証」を提供するIDaaSも多い。
もう一つ重視されるのがID連携だ。IDaaSに作成したIDを、SaaSや社内ネットワークのサーバーなどへ連携する機能である。それらの認証を一元的に実施するシングルサインオン(SSO、Single Sign On)も多くのIDaaSが備えている。
既存のIDPを有効活用するため、ID管理をIDaaSで実施しない場合もある。例えばIDPとしてのIDの作成や更新は従来通りADが担い、IDaaSはSaaS利用の際の認証や認可を担当するといったケースだ。これまで通りIDの管理はADに任せつつ、ADが苦手とするクラウドサービスの制御をIDaaSに分担させるわけだ。