SIer 必須度 –
基本情報技術者試験 午後 情報セキュリティ(平成 31 年 春 午後 問 1)のエッセンスを抽出しました(若干、厳密さを緩めました)。本質をつかんでもらおうと、設問を変えたところ、本試験より難易度が上がってしまいました。
この問題を通して、「ネットワーク構成図」と「通信の流れ」を紐づける力をつけてください。また、ID 連携の基本的なコンセプトを理解してください。
10 ~ 15 分(これ以上かかるようであれば、解説を見ましょう)問題
図 1 は、A 社のネットワーク構成である。利用者は、業務システムを、クライアント PC の Web ブラウザから利用する。社外から社内 LAN へのリモートアクセスは禁止されている。業務システムの利用者認証は、A 社認証サーバでの利用者 ID とパスワード(以下、この二つを併せて認証情報という)の検証によって行っており、シングルサインオンを実現している。
図 1. A 社のネットワーク構成 および 業務システムサーバ利用時の通信
利用者が業務システムサーバを利用する流れは、次の通りである。
- A 社認証サーバにアクセス(図 1 の 1 の通信)し、利用者認証を行う
- 認証が成功した場合に、業務システムにアクセス(図 1 の 2 の通信)し、利用する
このたび A 社は、業務システムの 1 つを、B 社クラウドサービスに移行することにした。利用者認証は、A 社認証サーバと B 社クラウドサービスを連携し、次の 3 つを実現することにした。
- B 社クラウドサービスをシングルサインオンの対象とする
- A 社の利用者認証は、B 社クラウドサービスについても、A 社認証サーバで行う
- A 社認証サーバで用いる認証情報は、B 社クラウドサービスには送信しない
これらを実現するため、A 社は、IdP(A 社認証サーバとB 社クラウドサービス間で、利用者認証を仲介するサーバ)を社内 LAN に設置することにした。
IdP 設置後の A 社のネットワーク構成は、図 1 に IdP を加え、図 2 のようになる。
図 2. IdP 設置後の A 社のネットワーク構成
IdP は、認証結果、認証有効期限及び利用者 ID の情報(以下、これら三つを併せて認証済情報という)に、ディジタル署名を付加し、Web ブラウザを介して、B 社クラウドサービスに送信する。B 社クラウドサービスは、ディジタル署名を検証し、改ざんされていないことを確認する。このため、事前に、IdP の公開鍵(検証鍵)を B 社クラウドサービスに登録しておく。
クライアント PC の Web ブラウザが B 社クラウドサービスを利用するまでの流れは、次のようになる。
図 3. B 社クラウドサービスが利用可能になるまでの処理の流れ
設問 1 Web ブラウザが B 社クラウドサービスにアクセスしてから、サービスが利用開始となるまでの通信のうち、図 3 の通信 1 、 2 、 4 を、図 2 に書き込んでください(図 1 と同じように)。
設問 2 図 3 の処理 ① ~ ⑩、通信 1 ~ 5 から選んでください。
- 社外から B 社クラウドサービスを利用しようとしたときに、失敗する通信はどれですか?
- ID 及びパスワードが流れる通信はどれですか?
- 認証済情報を発行する処理はどれですか?
解説
設問 1 ネットワーク構成図上の通信の流れ
図 3 の情報を写しとると、次のようになります。
これで、だいたい雰囲気はわかったはずです。
設問 2 シーケンス図上の通信と処理
- 通信 2 です。『社外から社内 LAN へのリモートアクセスは禁止されている』ため、IdP にアクセスする通信が失敗します(ファイアウォールではじかれます)。
- 通信 3 と 4 です。利用者は、ユーザ ID とパスワードを入力して、IdP に送信します。IdP は、この認証情報を、認証サーバに送信します。認証サーバでは、この認証情報をもとに、認証処理 7 を行います。
- 処理 8 です。IdP は、認証サーバから認証結果を受け取ります。認証が成功している場合には、認証済情報を発行し、ディジタル署名を付加します。これを、『Web ブラウザを介して、B 社クラウドサービスに送信する』ように指示します。
絵で見てわかる SAML の例
SAML のだいたいの動きを、あげておきます。
本問は IdP と 認証サーバが分かれていましたが、話を単純にするために、IdP が認証の機能も持っているとします。
下の図に出てくる「トークン」とは、本問で言うところの「認証済情報に、ディジタル署名を付加したもの」です。SAML では、特に「SAML アサーション」と呼びます。
本問と、IdP と SP(本問で言うところの、B 社クラウドサービス)の位置が逆になっています
以上になります。お疲れさまでした。