Using Überauth for authentication in Phoenix.
This project demonstrates how to use Überauth and multiple strategies to provide authentication for a Phoenix application. The project has been setup to run on Heroku can can be found at ueberauth-example.herokuapp.com.
In this example we'll use five strategies:
- Facebook (ueberauth_facebook)
- GitHub (ueberauth_github)
- Google (ueberauth_google)
- Slack (ueberauth_slack)
- Twitter (ueberauth_twitter)
- Identity (ueberauth_identity)
- Ensure the following prerequisites are met/installed:
- Erlang 23
- Elixir 1.11
-
Retrieve app ids and secrets and set environment variables:
- Facebook (https://developers.facebook.com)
- FACEBOOK_APP_ID
- FACEBOOK_APP_SECRET
- GitHub (https://developer.github.com)
- GITHUB_CLIENT_ID
- GITHUB_CLIENT_SECRET
- Google (https://console.developers.google.com/home)
- GOOGLE_CLIENT_ID
- GOOGLE_CLIENT_SECRET
- Slack (https://api.slack.com/applications)
- SLACK_CLIENT_ID
- SLACK_CLIENT_SECRET
- Twitter (https://dev.twitter.com)
- TWITTER_CONSUMER_KEY
- TWITTER_CONSUMER_SECRET
- Facebook (https://developers.facebook.com)
-
Clone the project:
$ git clone https://github.com/ueberauth/ueberauth_example.git $ cd ueberauth_example
-
Fetch dependencies:
$ mix deps.get && npm install --prefix assets
-
Run server:
$ mix phx.server
-
Authenticate at http://localhost:4000!
See Überauth for detailed instructions.
Please see LICENSE for licensing details.