Class: CasrackTheAuthenticator::ServiceTicketValidator

Inherits:
Object
  • Object
show all
Defined in:
lib/casrack_the_authenticator/service_ticket_validator.rb

Constant Summary collapse

VALIDATION_REQUEST_HEADERS =
{ 'Accept' => '*/*' }

Instance Method Summary collapse

Constructor Details

#initialize(configuration, return_to_url, ticket) ⇒ ServiceTicketValidator

Build a validator from a configuration, a return_to URL, and a ticket.

Parameters:

  • configuration (CasrackTheAuthenticator::Configuration)

    the CAS configuration

  • return_to_url (String)

    the URL of this CAS client service

  • ticket (String)

    the service ticket to validate



15
16
17
# File 'lib/casrack_the_authenticator/service_ticket_validator.rb', line 15

def initialize(configuration, return_to_url, ticket)
  @uri = URI.parse(configuration.service_validate_url(return_to_url, ticket))
end

Instance Method Details

#userString?

Request validation of the ticket from the CAS server’s serviceValidate (CAS 2.0) function.

Swallows all XML parsing errors (and returns nil in those cases).

Returns:

  • (String, nil)

    a username if the response is valid; nil otherwise.

Raises:

  • any connection errors encountered.



27
28
29
# File 'lib/casrack_the_authenticator/service_ticket_validator.rb', line 27

def user
  parse_user(get_validation_response_body)
end