メインコンテンツへ
セキュリティセキュリティ応用

SAML(Security Assertion Markup Language)に関する記述として、最も適切なものはどれか。

ア.SAMLはJSONベースの軽量トークン規格で、モバイルアプリのAPI認証に向く。
イ.SAMLはハッシュ関数の一種で、メッセージ認証コードの計算に使用される。
ウ.SAMLはサーバ証明書のフォーマット規格で、X.509証明書の後継として標準化された。
エ.SAMLはXMLベースの認証・認可情報交換規格で、IdP(Identity Provider、認証元)とSP(Service Provider、サービス提供側)の間でアサーション(認証結果)をやり取りすることで、企業内SSO・フェデレーション認証を実現する。正解

解説

SAMLは「会社の社員証で系列各社の入館を受け付ける身分証連携」の仕組み。一度本社(IdP)で認証されれば、子会社(SP)の入り口でも社員証を見せるだけでOK——ただし社員証はXMLでガッツリ書かれた書類です。

なぜ エ が正解か

エが正解。SAMLはOASIS策定のXMLベースの認証・認可情報交換規格。IdP(Active Directoryフェデレーションサービスやokta等)が利用者を認証し、署名付きXMLアサーションをSP(クラウドサービス等)に渡してログイン完了させる。企業内SSO、SaaS連携、教育機関の学術認証連携(Shibboleth)で広く使われる。JWTやOAuth/OIDCより歴史が古く重量級。

なぜ ア は間違いか

JSONベース軽量トークンの説明はJWT。SAMLはXMLベースで重量級であり、モバイルアプリ向きではない(モバイルはOAuth+OIDCが主流)。

なぜ イ は間違いか

ハッシュ関数(SHA-256等)とSAMLは無関係。SAMLは認証情報交換規格であり、ハッシュアルゴリズムではない。

なぜ ウ は間違いか

X.509はサーバ証明書の規格でSAMLとは別物。SAMLは証明書フォーマットではなくアサーション(認証主張)の交換プロトコル。

出典: AI生成問題(学習用)