This is an OmniAuth 1.0 compatible strategy that authenticates via EPFL's Tequila protocol, structured after omniauth-cas. By default, it connects to EPFL's Tequila server, but it is fully configurable.
Installation
Add this line to your application's Gemfile:
gem 'omniauth-tequila'
And then execute:
$ bundle
Or install it yourself as:
$ gem install omniauth-tequila
Usage
Use like any other OmniAuth strategy:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :tequila #, :option => value, ...
end
Configuration Options
OmniAuth Tequila authenticates with the EPFL server over SSL by default. However, it supports the following configuration options:
-
host
- Defines the host of your Tequila server -
require_group
- Defines the group that will have access to the service -
service_name
- Define the name the service will authenticate with to tequila -
path
- Defines the URL relative to the host that the application sits behind -
port
- The port to use for your configured Tequilahost
-
ssl
- true to connect to your Tequila server over SSL -
disable_ssl_verification
- Optional whenssl
is true. Disables verification. -
ca_path
- Optional whenssl
istrue
. Sets path of a CA certification directory. See Net::HTTP for more details -
uid_field
- The user data attribute to use as your user's unique identifier. Defaults to'uniqueid'
(which contains the user's SCIPER number when using EPFL's Tequila server) -
request_info
- Hash that maps user attributes from Tequila to the OmniAuth schema. Defaults to{ :name => 'displayname' }
(which is the user's full name when using EPFL's Tequila server)
If you encounter problems wih SSL certificates you may want to set the ca_path
parameter or activate disable_ssl_verification
(not recommended).
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
Thanks
Special thanks go out to the following people
- Derek Lindahl (@dlindahl) and all the authors of omniauth-cas