SAML認証の動作|科目A-1(応用情報技術者) 令和6年 秋期午前試験 問37

出典:令和6年秋期 午前 問37 分野:セキュリティ / 情報セキュリティ
企業内のクライアントからクラウドサービスへのアクセスにSAML認証を利用したときのシステムの動作に関する記述のうち,適切なものはどれか。ここで,利用者IDとパスワードは企業内のディレクトリサービスで管理し,利用者認証は企業内の認証サーバで行う。
  • ア:クラウドサービスがディレクトリサービスに利用者IDとパスワードの送信を要求する。
  • イ:認証サーバからクラウドサービスに,利用者IDとパスワードを送信する。
  • ウ:認証サーバから認証結果をクライアント経由でクラウドサービスに送信する。
  • エ:利用者が入力したパスワードとクラウドサービスから送信された乱数を組み合わせ,さらにハッシュ値に変換した結果をクライアントからクラウドサービスに送信する。
応用情報技術者
解説

SAML認証は、異なるサービス間でログイン情報をやり取りし、シングルサインオンを実現するための仕組みです。

SAML認証

たとえば、会社の認証システムに一度ログインすれば、別のクラウドサービスにも再ログインせずにアクセスできるようになります。このとき、認証情報のやり取りに使われるのがSAMLアサーションです。

  1. 利用者が認証をリクエストする
  2. IdP(認証提供者)が利用者を認証し、SAMLアサーションと呼ばれる認証情報を発行する
  3. SP(サービス提供者)がSAMLアサーションを受け取り、利用者のアクセスを許可する

IdPは、利用者が本人であることを確認する側です。会社の認証基盤やID管理サービスなどが該当します。

SPは、利用者が実際に使いたいサービスを提供する側です。クラウドサービスや業務システムなどが該当します。

SAMLアサーションは、「この利用者は認証済みです」という情報をまとめたデータです。SPはこのSAMLアサーションを確認することで、利用者にサービスへのアクセスを許可します。

SAML認証には、IdPから先にログインしてサービスを選ぶIdP Initiatedと、利用したいサービスであるSPから認証を始めるSP Initiatedがあります。

どちらの方式でも、最終的にはIdPがSAMLアサーションを発行し、それが利用者のWebブラウザを経由してSPに渡される点は同じです。

つまりSAML認証は、「認証する側であるIdP」と「サービスを提供する側であるSP」が、SAMLアサーションを使って認証結果を共有する仕組みです。

したがって、が適切です。

❌他選択肢が誤りの理由
ア:クラウドサービスがディレクトリサービスに利用者IDとパスワードの送信を要求する。
⇒SAML認証では、クラウドサービスが企業内のディレクトリサービスから利用者IDやパスワードを取得するのではなく、企業内の認証サーバによる認証結果を利用します。
イ:認証サーバからクラウドサービスに,利用者IDとパスワードを送信する。
⇒認証サーバから送られるのは、パスワードそのものではなく認証結果を示すSAMLアサーションです。パスワードをクラウドサービスへ送信する必要はありません。
エ:利用者が入力したパスワードとクラウドサービスから送信された乱数を組み合わせ,さらにハッシュ値に変換した結果をクライアントからクラウドサービスに送信する。
⇒チャレンジレスポンス認証に類する仕組みの説明です。SAMLでは、IdPが発行した認証結果をSPへ渡すことで認証情報を連携します。
TSUNAGARU-ADVICE

まず押さえたいこと

SAML認証では、企業内の認証サーバが利用者を認証し、その認証結果をSAMLの認証情報としてクラウドサービスへ伝えることでシングルサインオンを実現します。利用者IDやパスワードそのものをクラウドサービスへ渡す必要はありません。

迷ったときの判断軸

企業内の認証サーバはIdP(Identity Provider)、クラウドサービスはSP(Service Provider)として動作します。認証後は、IdPが生成した認証結果がクライアントを経由してSPへ渡されるという流れを押さえましょう。パスワードをSPへ直接送る仕組みではありません。

科目Bにつなげるために

特に情報処理安全確保支援士試験合格を目指す方は、SAMLをIdPで認証し、SPが認証結果を信頼するフェデレーション認証として理解しましょう。シングルサインオン・認証情報の集中管理・クラウドサービス連携などの認証設計につながります。