GrailsのSpringSecurityREST(とSpringSecurityCore)を使って、RESTfulな認証を実現。
- クライアント(JavaScript)から、ユーザIDとパスワードをGrailsに送信
- 問題なければGrailsから
access_token
とrefresh_token
が返ってくる(とりあえずlocalStorageとかに保存) - クライアントからGrailsのAPIを呼び出す際には、ヘッダーに「Authorization: Bearer サーバから貰ったaccess_token 」を指定して通信。
access_token
は制限時間有りなので、refresh_token
を使って新しいaccess_token
を再取得する。(できる)
/oauth/access_token
に対して、refresh_token
を投げることで、2番と同様のフォーマットで新しいaccess_token
が返ってくる。
このパス(/oauth/access_token
)は、URLMappingの設定で、permitAll(誰でもアクセス可)にしておく必要がある。
リファレンス: http://alvarosanchez.github.io/grails-spring-security-rest/latest/docs/