SAML認証の動作|科目A-1(応用情報技術者) 令和6年 秋期午前試験 問37
出典:令和6年秋期 午前 問37
分野:セキュリティ / 情報セキュリティ
企業内のクライアントからクラウドサービスへのアクセスにSAML認証を利用したときのシステムの動作に関する記述のうち,適切なものはどれか。ここで,利用者IDとパスワードは企業内のディレクトリサービスで管理し,利用者認証は企業内の認証サーバで行う。
- ア:クラウドサービスがディレクトリサービスに利用者IDとパスワードの送信を要求する。
- イ:認証サーバからクラウドサービスに,利用者IDとパスワードを送信する。
- ウ:認証サーバから認証結果をクライアント経由でクラウドサービスに送信する。
- エ:利用者が入力したパスワードとクラウドサービスから送信された乱数を組み合わせ,さらにハッシュ値に変換した結果をクライアントからクラウドサービスに送信する。
TSUNAGARU-ADVICE
まず押さえたいこと
SAML認証では、企業内の認証サーバが利用者を認証し、その認証結果をSAMLの認証情報としてクラウドサービスへ伝えることでシングルサインオンを実現します。利用者IDやパスワードそのものをクラウドサービスへ渡す必要はありません。
迷ったときの判断軸
企業内の認証サーバはIdP(Identity Provider)、クラウドサービスはSP(Service Provider)として動作します。認証後は、IdPが生成した認証結果がクライアントを経由してSPへ渡されるという流れを押さえましょう。パスワードをSPへ直接送る仕組みではありません。
科目Bにつなげるために
特に情報処理安全確保支援士試験合格を目指す方は、SAMLをIdPで認証し、SPが認証結果を信頼するフェデレーション認証として理解しましょう。シングルサインオン・認証情報の集中管理・クラウドサービス連携などの認証設計につながります。

SAML認証は、異なるサービス間でログイン情報をやり取りし、シングルサインオンを実現するための仕組みです。
たとえば、会社の認証システムに一度ログインすれば、別のクラウドサービスにも再ログインせずにアクセスできるようになります。このとき、認証情報のやり取りに使われるのが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へ渡すことで認証情報を連携します。