問題 No.4343
Webアプリケーションやモバイルアプリにおいて、サードパーティ製アプリケーションがユーザーのパスワードを直接知ることなく、別のサービスが保有しているユーザーのリソースに対する限定的なアクセス権限を安全に委与するための認可フレームワークとして最も適切なものはどれか。
【正解の解説】
OAuth
ホテルに例えると、本物の合鍵(パスワード)を渡すのではなく、特定の部屋だけに期間限定で入れる「専用の電子カードキー(アクセストークン)」を発行して渡す仕組みです。これによって、万が一アプリ側が乗っ取られても、本体のマスターキーは安全に守られます。
スポンサーリンク
【その他の選択肢の解説】
OpenID Connect
OAuthが「部屋に入る権限を渡す仕組み」であるのに対し、OpenID Connectはその人が誰であるかを確認する「身分証明書(パスポート)を見せる仕組み」です。名前が似ており、OAuthの仕組みをベースに作られているため試験でも頻繁に混同を狙って出題されます。
SAML
SAMLは企業向けの強固なセキュリティ環境で、一度のログインで複数の業務システムを利用できるようにする技術です。一般のWebアプリやモバイルアプリで手軽に権限委譲を行うOAuthとは、利用シーンや仕組みが大きく異なります。
LDAP
LDAPは社内システムのユーザー情報やアクセス権を一元管理するための仕組みであり、インターネットを介して外部のサードパーティアプリに安全に権限を貸し出すOAuthとは目的もアーキテクチャも全く異なります。