billylindeman / guardian_redis

Guardian DB Redis adapter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GuardianRedis

Hex.pm Build Status

Redis repository for Guardian DB.

Installation

You can use GuardianRedis in case you use Guardian library for authentication and Guardian.DB library for JWT tokens persistence.

If available in Hex, the package can be installed by adding guardian_redis to your list of dependencies in mix.exs:

def deps do
  [
    {:guardian_redis, "~> 0.1.0"}
  ]
end

Configuration

All you need to install Guardian DB as per Guardian.DB README and just use GuardianRedis.Repo as a repo in settings.

config :guardian, Guardian.DB,
       repo: GuardianRedis.Repo # Add this Redis repository module

Apart from this please set up Redis configuration:

config :guardian_redis, :redis,
  host: "127.0.0.1",
  port: 6379,
  pool_size: 10

Implement Guardian.DB repo for a different storage

Initially, Guardian.DB was aimed to store and operate JWT tokens in a PostgreSQL database. Sometimes round trip to Postgres database is expensive so this is why this Redis repo was born. In case you want to implement a possibility for Guardian.DB to use different storage, e.g. ETS (or MySQL), you need to implement Guardian.DB.Adapter behavior. Thanks to @aleDsz it's quite simple: https://github.com/ueberauth/guardian_db/blob/master/lib/guardian/db/adapter.ex

Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/guardian_redis.

About

Guardian DB Redis adapter

License:MIT License


Languages

Language:Elixir 100.0%