はじめに
この記事では、以下3つの要点に絞って
Active Directoryで利用される認証方法であるKerberos認証を開設していきたいと思います。
- 認証と認可とは何か
- Kerberos認証の通信の流れ
- WindowsにてKerberos認証を確認する方法
認証と認可
認証と認可はkerberos認証を理解する上で非常に重要になります。
下記に例を含めて記載したので一緒に理解してきましょう!
認証(にんしょう)とは
PCやサービスを利用しようとしているユーザーが正規のユーザーが確かめるプロセスです。
上記のイラストを例に説明してきます。イラストではレンタカー屋にて左の男性がこれからレンタカーを借りる場面になります。
レンタカーを借りる際は免許証が必要になりますよね。右側の女性は免許証を用いて左の男性がレンタカーに乗ってもよい人か認証をします。
認証した上で問題なければ、男性は無事にレンタカーを借りることができます。
認可(にんか)とは
認証済みのユーザーに対して適切な権限を付与するプロセスになります。
ポイントは認証が行われた上で認可が実施される点です。
例えば、会社員の方であれば、ビルに入る際にカードキーなどが必要です。レンタカーの例で言えば、レンタカーを借りる際の車種や金額を指定することで、乗れる車のグレードが変わってきます。
先ほどの男性は、レンタカーの借りる金額を一番安価にしたため、あんまり見た目がよくない車しかレンタルさせてもらえないのです。逆にレンタルする料金を高めにすれば、スポーツカーなどの見た目がかっこいい車にも乗れるようになります。
これが認可になります。
kerberos認証とは
認証と認可を理解した上で、本題のKeruberos認証について解説します。
Keruberos認証とはネットワーク認証方式の1つであり、SSOを実現する認証方法になります。
ネットワーク認証
ネットワーク認証とはあるネットワークにアクセスしようとするユーザーが本当に正しいユーザーかを確認するプロセスを指します。
認証方法はいくつかあるのですが、一番わかりやすい例で行けばWi-Fiを初めて使う際にSSID(Wi-Fiの名前みたいなもの)とPWを入れますよね。
この行為がまさしくネットワーク認証になります
SSO(シングルサインオン)
1度の認証で許可されている複数のサービスへアクセスできるようになる仕組みを指します。
一番わかりやすい例で行くとGoogleサービスでしょうか。
googleアカウントで一度ログインするとそれに関連するサービス(例えば、GmailやGoogleカレンダーなど)は認証なしで使えます。
登場する用語
Kerberos認証で登場するワードは似たようなものが多く混乱しやすいです。そのため、登場するワードの1つ1つをしっかりと理解することが重要です。
用語 | 正式名称 | 説明 |
User principal | User principal | |
KDC | key Destribution Center | |
AS | Authentication Service | 認証を行う機能、もしくはサーバー |
TGS | Ticket Grantng Service | TGSを発行する機能 |
TGT | Ticket Grantng Ticket | Service Ticketを発行してもらうためのチケット |
ST | Service Ticket | サービスへアクセスするためのチケット |
Kerberos認証を理解するうえで必ず押さえるワードは下記表のとおりです。正式名称は余裕があったら覚える程度で、まずは用語と説明を理解することを優先してください。
kerberos認証の流れ
kerberos認証の流れを下記にまとめました。
・AS-REQ : Client→Authentication Serverの通信
・AS-RES : Authentication Server→Clientの通信
・TGS-REQ: Client→TGSの通信
・TGS-RES : TGS→Clientの通信
kerberosチケット確認方法
Kerberos認証について知識である程度理解したところで、今度はwinodwsにて実際にどのような形でKerberos認証がされているのか見ていきましょう!
今回は確認の方法を2つご紹介します!
①コマンドプロンプト
②イベントビューアー
コマンドプロンプト
コマンドプロンプトで確認する場合は下記コマンドが使えます!
Klist <tickets | tgt | purge>
コメント