README.rdoc in authpds-nyu-0.0.9 vs README.rdoc in authpds-nyu-0.1.0
- old
+ new
@@ -1,3 +1,63 @@
= AuthpdsNyu
-Gem to connect to NYU PDS system for user authentication and authorization.
\ No newline at end of file
+This gem provides a mechanism for user authentication and authorization via NYU Libraries PDS system. It extends Authpds and provides NYU Libraries' specific configuration.
+
+== Basics
+=== Generate User-like model
+ $ rails generate model User username:string email:string firstname:string \
+ lastname:string mobile_phone:string crypted_password:string password_salt:string \
+ session_id:string persistence_token:string login_count:integer last_request_at:string \
+ current_login_at:string last_login_at:string last_login_ip:string current_login_ip:string \
+ user_attributes:text refreshed_at:datetime
+
+=== Configure User-like model
+ class User < ActiveRecord::Base
+ serialize :user_attributes
+
+ acts_as_authentic do |c|
+ c.validations_scope = :username
+ c.validate_password_field = false
+ c.require_password_confirmation = false
+ c.disable_perishable_token_maintenance = true
+ end
+ end
+
+=== Generate UserSession model
+ $ rails generate authlogic:session user_session
+
+=== Configure UserSession with Authpds options
+ class UserSession < Authlogic::Session::Base
+ pds_url "https://login.library.nyu.edu"
+ redirect_logout_url "http://bobcat.library.nyu.edu"
+ calling_system "nyu_system"
+ anonymous true
+ end
+
+=== Create UserSessions controller
+ $ rails generate controller UserSessions --no-assets --no-helper
+
+=== Mixin authpds methods into UserSessionsController
+ class UserSessionsController < ApplicationController
+ require 'authpds'
+ include Authpds::Controllers::AuthpdsSessionsController
+ end
+
+=== Mixin authpds methods into ApplicationController
+ class ApplicationController < ActionController::Base
+ protect_from_forgery
+ require 'authpds'
+ include Authpds::Controllers::AuthpdsController
+ end
+
+
+== Overview
+The module extends Authpds and should be compatible with Authpds configuation.
+It also provides hooks for custom functionality.
+The documentation below describes NYU specific config methods available.
+
+== Config Options Available
+:opensso_url:: Base OpenSSO url (https://login.nyu.edu:443/sso)
+:aleph_url:: Aleph url (http://aleph.library.nyu.edu)
+:aleph_default_adm:: Aleph default ADM (NYU50)
+:aleph_default_sublibrary:: Aleph default sublibrary (BOBST)
+