はじめに
◆この記事は何?
シングルサインオンの手段であるSAML認証とケルベロス認証を説明する記事です。
◆この記事のねらい
「用語の語源」も紹介することで、理解と暗記のハードルを下げるのがねらいです。
◆対象は?
セキュリティ分野(認証分野、シングルサインオン)について試験対策している人
語源について
可能な限り出典・参考文献を記載、また確認するようにしていますが、語源はその性質上、不確実性を含みます。
この記事が皆様の暗記に役立つ一助となれば幸いです。
もし誤りを発見された場合には、ご指摘いただければと思います。
シングルサインオン(SSO)
シングルサインオンは、一度の認証で複数のサーバやアプリケーションを利用できる仕組みです。
シングルサインオンの実現手段には、SAML認証やケルベロス認証があります。
SAML認証
◆SAML
SAMLは、Security Assertion Markup Languageの略です。
SAML認証の流れをシーケンス図で表します。
◆サービスプロパイダ(Serveice Provider)
サービスプロパイダは、サービスを提供する側のWebアプリケーションやサービスです。
「プロパイダ」は「provider」で提供者を意味します。
◆アイデンティプロパイダ(Identity Provider)
アイデンティプロパイダは、アイデンティティ(ID)を管理し、必要に応じて一部をサービスプロバイダーに提供する事業者やシステムです。
◆アサーション(Assertion)の意味
IT用語辞典では、「アサーション」は次のように説明されています。
英単語としての意味
アサーション(Assertion)とは、表明、断言、主張などの意味を持つ英単語。
プログラミングにおいての意味
プログラミングにおいて、あるコードが実行される時に満たされるべき条件を記述して実行時にチェックする仕組みをアサーションという。
わわわIT用語辞典では、「Security Assertion Markup Language」を
安全主張用の印を付ける言語
と解釈されています。
◆SAMLアサーションについて
SAMLアサーションとは、ユーザーがサインインしたことをサービスプロバイダーに伝えるメッセージのことです。
SAMLアサーションはXML形式です。
SAMLアサーションに含まれる情報は、認証情報・属性情報・認可情報の三つです。
- 認証情報
- 認証された時刻や場所など
- 属性情報
- ユーザーの名前など
- 認可情報
- ファイルへのアクセス権限などのユーザー権限情報
次のサイトでは、SAMLアサーションを実際に観察された例が紹介されています。
◆SAMLの特徴
SAMLはサービスプロパイダとアイデンティプロパイダの間で認証情報のやり取りがありません。
リダイレクトを使って、クライアントからサービスプロパイダとアイデンティプロパイダにそれぞれ接続してSSOを行います。
<参考>
「ゼロからスタート! 教育系YouTuberまさるの情報処理安全確保支援士1冊目の教科書」
2024 情報処理安全確保支援士「専門知識+午後問題」の重点対策
ケルベロス認証
まずはケルベロス認証(Kerberos認証)の流れをシーケンス図で説明します。
次のサイトでは「要求/応答のやりとり」がより詳細にわかります。
◆レルム(realm)
「レルム(realm)」の元々の意味は、「領域」や「王国」です。
ケルベロス認証における「レルム」は認証の範囲です。
また、レルム内で行われる通信はいずれも暗号化されています。
レルムの範囲にあるリソースを「principal」といいます。
<参考>
英辞郎onWeb「realm」
2024 情報処理安全確保支援士「専門知識+午後問題」の重点対策
◆KDC(Key Distribution Center)
「KDC(Key Distribution Center)」は、Kerberos認証のサーバです。
「Key Distribution Center」を直訳すると、「キー配布センター」です。
KDCは、AS、TGS、KDBで構成されます。
- KDCの構成要素
- AS
- Authentication Server
- 認証サーバー
- TGS
- Ticket Granting Server
- チケット認可サーバー
- KDB
- Kerberos DataBase
- 共有鍵を保管するデータベース
- AS
- チケット
- TGT
- Ticket Granting Ticket
- TGSにチケットを発行してもらうためのチケット
- ST
- Service Ticket
- サービスを提供してもらうためのチケット
- TGT
「Grant」は「許可する、承諾する」という意味です。
<参考>
キー配布センター
◆ケルベロス(Kerberos)
「ケルベロス」はギリシャ神話の「地獄の番犬ケルベロス(Kerberos)」に由来します。
いらすとやのケルベロスのイラスト
おわりに
この記事では、SAML認証とケルベロス認証について説明しました。
理解や暗記のハードルが下がれば嬉しいです。
それでは。