LoginSignup
0
1

More than 5 years have passed since last update.

sorceryというRubyの認証便利gemを使う その2 Activity logging

Posted at

はじめに

Railsの認証系をなにか触ってみたく、sorceryというものをいじってます。
https://github.com/Sorcery/sorcery

前回の投稿 のものをベースに機能を追加したいと思います。
今日は、Activity logging というsubmoduleを使ってActivityのロギングができるようにします。

Activity loggingを試す

名前からして気になりました。(Brute Force Protectionも気になってますが今日はこれ)
https://github.com/Sorcery/sorcery/wiki/Activity-logging

% rails g sorcery:install activity_logging --only-submodules
Running via Spring preloader in process 23570
Expected string default value for '--jbuilder'; got true (boolean)
        gsub  config/initializers/sorcery.rb
      insert  app/models/user.rb
      create  db/migrate/20170112143345_sorcery_activity_logging.rb
fukumura@ubuntu-xenial(14:33:45) ~/projects/sorcery-sample

↑中身がサンプル結果と違うけど突き進んでみます。

% rake db:migrate
== 20170112143345 SorceryActivityLogging: migrating ===========================
-- add_column(:users, :last_login_at, :datetime, {:default=>nil})
   -> 0.0381s
-- add_column(:users, :last_logout_at, :datetime, {:default=>nil})
   -> 0.0155s
-- add_column(:users, :last_activity_at, :datetime, {:default=>nil})
   -> 0.0082s
-- add_column(:users, :last_login_from_ip_address, :string, {:default=>nil})
   -> 0.0362s
-- add_index(:users, [:last_logout_at, :last_activity_at])
   -> 0.0057s
== 20170112143345 SorceryActivityLogging: migrated (0.1071s) ==================

で、実行しようとしたらError。

Showing /home/fukumura/projects/sorcery-sample/app/views/layouts/application.html.erb where line #25 raised:

undefined local variable or method `current_users' for #<UsersController:0x007f9ea4107800>
Did you mean?  current_user
               current_user=
               @current_user

調べてみたら、current_usersは、sorcery0.10でremoveされたそうな。たしかに使いみちなさそうだ。

これでおしまい。
ログイン・ログアウトしてみると(pumaを再起動してから)値が入るようになりました。
スクリーンショット 2017-01-13 0.11.14.png

ソースコードはこの辺。
https://github.com/Sorcery/sorcery/blob/master/lib/sorcery/model/submodules/activity_logging.rb

今日の差分。
https://github.com/fukumura/sorcery-sample/commit/057f1cdbca4ea2d955bfe2b01eff52506c808915

次回は、Brute Force Protection。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1