読者です 読者をやめる 読者になる 読者になる
無料で使えるシステムトレードフレームワーク「Jiji」 をリリースしました!

・OANDA Trade APIを利用した、オープンソースのシステムトレードフレームワークです。
・自分だけの取引アルゴリズムで、誰でも、いますぐ、かんたんに、自動取引を開始できます。

認証-認証プロトコルいろいろ

RADIUS (Remote Authentication Dial In User Service)

「認証」「認可」「アカウンティング」のサーバーでの一元管理を目的とする認証プロトコル

認証(Authentication)
利用者が誰であるかを識別すること
認可(Authorization)
認証済みの利用者に対してサービスを提供するか否かを判断すること
アカウンティング(Accounting)
利用の事実を記録すること

これをしゃべるRADIUSサーバーを利用することで、認証機能と提供するサービスとを分離し、複数のサービスでのユーザー認証を一元化できる。

  • 通信ではUDPを使う。
  • 共通鍵によるサーバー認証機構と改ざん検知機能を持つ。共通鍵なので鍵の漏洩に注意。
  • パケット全体の暗号化はされないみたいだが、パスワードだけは暗号化されるらしい。
  • RFC 2865 - 2869あたりで規定されている。
認証の流れ
  1. クライアントがサービスを提供するサーバーにリクエストを送信
  2. サービス提供サーバーがRADIUSサーバに「RADIUS要求パケット」を送信。
  3. RADIUSサーバーが認証を行い、結果をサービス提供サーバーに返す。

TACACS(Terminal Access Controller Access Control System)

RADIUSとだいたいおなじ。TACACS+はのシスコの拡張版。

  • TCPを使う。(RADIUSUDP)
  • 通信パケット全体が暗号化される。(RADIUSはパスワードのみ)
  • 使える認証方式が追加されているらしい。

Kerberos

認証プロトコルやプログラムを含む認証システムの総称。RADIUSやTACACSでは認証,認可を同じフェーズで行うがKerberosでは2フェーズで行う。(サービスを行うプログラムも別。が、一般的には同じサーバーで運用する場合が多い。)

AS
認証を行うサーバー
TGS
認可を行うサーバー

→あわせてKDC (Key Distribution Center)とよぶ。

認証の流れ
  1. クライアントがASにTGT(Ticket Getting Ticket)を要求(ユーザー名、パスワードもこのとき渡す。)
  2. ASは認証を行い、認証できた場合、TGTを発行。
    • 返されるTGTは以下の情報を含む
      • TGST 信用証明書。クレデンシャルと呼ばれる。
      • TGSキー クライアントがTGSとやり取りする際に使用する暗号化鍵
      • ASキー クライアントがASとやり取りする際に使用する暗号化鍵。いらんのでは?
    • このやり取りは共通鍵で暗号化される。(クライアント/ASサーバーで同じ鍵を事前に登録しておく。)
  3. クライアントはクレデンシャルと利用したいサービスの情報をTGSに送付
  4. TGSは認可を行い、問題がなければ以下を返す
    • ST サービスの利用許可証明(TGSとサービスサーバーで使う鍵で暗号化されている。クライアントは複合できない)
      • Sキー クライアントがサービスサーバーとやり取りする際に使用する暗号化鍵。
    • このやり取りは、2でかえされたTGSキーを用いて暗号化される。
  5. クライアントはSTとユーザー名、IPアドレスなどをサービスサーバー送付し、利用を開始する。


参考: