Sha256: 96c39d1076c878b4d7c72f4b232f014da8547baec5cf8385f3c83767837199cb

Contents?: true

Size: 966 Bytes

Versions: 4

Compression:

Stored size: 966 Bytes

Contents

module Authpds
  module Session
    module Authentication
      def authenticated?
        authenticate
      end
      protected :authenticated?

      def authenticate
        # Don't authenticate if the system is inaccessible.
        # If the application session id is nil, skip this check.
        return false if controller.cookies["#{calling_system}_inaccessible".to_sym] == true
        # If PDS session already established, authenticate
        return true unless pds_user.nil?
        # Try to establish a PDS session if the user logged in via an alternative 
        # SSO mechanism and this isn't being called after login
        unless controller.params["action"] =="validate" or controller.performed?
          controller.redirect_to sso_url({ :return_url => controller.request.url }) if attempt_sso?
        end
        # Definitely, do not authenticate if we got this far
        return false
      end
      protected :authenticate
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
authpds-1.1.2 lib/authpds/session/authentication.rb
authpds-1.1.1 lib/authpds/session/authentication.rb
authpds-1.1.0 lib/authpds/session/authentication.rb
authpds-1.0.0 lib/authpds/session/authentication.rb