プロジェクトマネージャ 2020年 午前2 問23
問題文
シングルサインオンの実装方式に関する記述のうち、適切なものはどれか。
選択肢
ア:cookieを使ったシングルサインオンの場合、サーバごとの認証情報を含んだcookieをクライアントで生成し、各サーバ上で保存、管理する。
イ:cookieを使ったシングルサインオンの場合、認証対象のサーバを、異なるインターネットドメインに配置する必要がある。
ウ:リバースプロキシを使ったシングルサインオンの場合、認証対象のWebサーバを、異なるインターネットドメインに配置する必要がある。
エ:リバースプロキシを使ったシングルサインオンの場合、利用者認証においてパスワードの代わりにディジタル証明書を用いることができる。(正解)
🔒 解説は解答すると表示されます
シングルサインオンの実装方式【午前2解説】
正解の理由
適切なのはエです。リバースプロキシを使う方式では、利用者はリバースプロキシを経由して複数のWebサーバにアクセスします。リバースプロキシで利用者を認証する際、パスワードだけでなく、ディジタル証明書を使うこともできます。
シングルサインオン(SSO)は、利用者が一度認証されると、連携する複数のサービスを利用できる仕組みです。認証に使う方法はパスワードに限られず、ディジタル証明書なども利用できます。
解法ステップ
- 選択肢を、cookieを使う方式とリバースプロキシを使う方式に分けます。
- cookie方式では、cookieをどこで作成・管理するか、ドメインの制約がどうなるかを確認します。
- リバースプロキシ方式では、対象サーバのドメイン配置と、利用者認証の方法を確認します。
- 誤った条件を含まず、ディジタル証明書による認証も可能としているエを選びます。
選択肢別の誤答解説
- ア:誤りです。 cookieをクライアントが独自に生成し、各サーバで認証情報を保存・管理する仕組みではありません。通常は認証を行うサーバなどがcookieを発行し、クライアントはそれを保持して送信します。クライアントが認証情報を自由に作れると、認証の信頼性を保てません。
- イ:誤りです。 cookieは、発行元のドメインや指定された範囲に基づいて送信されます。そのため、異なるインターネットドメインにあるサーバ間でcookieをそのまま共有することはできません。「異なるドメインに配置する必要がある」という説明は誤りです。
- ウ:誤りです。 リバースプロキシ方式では、利用者がプロキシを経由して各Webサーバにアクセスします。認証対象のサーバを異なるインターネットドメインに配置する必要はありません。配置場所やドメインが異なるサーバを、プロキシ経由で扱う構成も可能です。
- エ:適切です。 リバースプロキシで利用者認証を行う際、パスワードの代わりにディジタル証明書を利用できます。証明書によって利用者や端末を確認し、認証する構成が可能です。
よくある誤解
-
SSOでは、どの方式でも認証情報を各サーバで共有すると思い込むこと
cookie方式やリバースプロキシ方式では、認証情報を扱う場所や仕組みが異なります。 -
cookieは、どのドメインのサーバにも送信できると思い込むこと
cookieの送信先はドメインなどの条件で制限されます。異なるドメイン間でcookieをそのまま共有できるわけではありません。 -
SSOの認証方法はパスワードに限られると思い込むこと
認証方法には、ディジタル証明書などを使う選択肢もあります。
補足コラム
リバースプロキシは、利用者からのアクセスを受け付けて、背後にあるWebサーバへ転送する中継役です。利用者からは、複数のWebサーバへのアクセスがプロキシ経由に見えるため、プロキシで認証を一元化しやすくなります。
一方、cookie方式では、cookieを送信できるドメインの範囲が重要です。異なるドメイン間でSSOを実現する場合は、cookieを単純に共有するのではなく、認証連携の仕組みを利用します。
FAQ
Q. ディジタル証明書による認証では、パスワードは一切使いませんか?
A. 証明書をパスワードの代わりに認証に使う構成は可能です。ただし、実際のシステムでは、証明書に加えてパスワードを求めるなど、複数の認証要素を組み合わせる場合もあります。
A. 証明書をパスワードの代わりに認証に使う構成は可能です。ただし、実際のシステムでは、証明書に加えてパスワードを求めるなど、複数の認証要素を組み合わせる場合もあります。
Q. リバースプロキシ方式では、Webサーバは同じドメインに置く必要がありますか?
A. その必要はありません。リバースプロキシが利用者とWebサーバの間を中継するため、複数のサーバを異なる環境に配置する構成も可能です。
A. その必要はありません。リバースプロキシが利用者とWebサーバの間を中継するため、複数のサーバを異なる環境に配置する構成も可能です。
Q. cookieを使えば、異なるドメイン間でもそのままSSOできますか?
A. できません。cookieはドメインなどの制約を受けます。異なるドメイン間では、別の認証連携の仕組みが必要です。
A. できません。cookieはドメインなどの制約を受けます。異なるドメイン間では、別の認証連携の仕組みが必要です。
関連キーワード: シングルサインオン、cookie認証、リバースプロキシ、ディジタル証明書、ドメイン管理

\ せっかくなら /
プロジェクトマネージャを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

