[play1-controller] BASIC認証の実装

  playframework1

BASIC認証を行う準備はできており、requestオブジェクトのuserpasswordというプロパティを参照すればいい。
ここにユーザ名とパスワードが格納されている。

ユーザ名とパスワードを検証して、OKならそのまま後継の処理を続ける。
NGなら、unauthorized() で401を返却すればいい。

  1. 初回、ブラウザはユーザ名、パスワードなしでリクエストをしてくるので、unauthorized で401を返す。
  2. ブラウザは認証ダイアログを表示し、ユーザ名とパスワード入力を求める。
  3. ユーザ名とパスワードが入力されたら、入力された情報とともにリクエストしてくる。

という流れになる。

ログアウトは、認証状態でunauthorizedを返せばよいようだ。
挙動的にはイマイチな感じもするがそうゆうものみたいだ。

/**
 * BASIC認証
 */
public static void test2() {
  if ("user".equals(request.user) && "pass".equals(request.password)) {
    renderText("認証した.");
  }
  unauthorized();
}

LEAVE A COMMENT