Module: CASinoCore::Helper::ProxyTickets
Defined Under Namespace
Classes: ValidationResult
Constant Summary
Constants included
from Tickets
Tickets::ALLOWED_TICKET_STRING_CHARACTERS
Instance Method Summary
collapse
Methods included from Tickets
#random_ticket_string
Methods included from Logger
#logger
Instance Method Details
#acquire_proxy_ticket(proxy_granting_ticket, service) ⇒ Object
10
11
12
13
14
15
|
# File 'lib/casino_core/helper/proxy_tickets.rb', line 10
def acquire_proxy_ticket(proxy_granting_ticket, service)
proxy_granting_ticket.proxy_tickets.create!({
ticket: random_ticket_string('PT'),
service: service,
})
end
|
#ticket_valid_for_service?(ticket, service, renew = false) ⇒ Boolean
34
35
36
|
# File 'lib/casino_core/helper/proxy_tickets.rb', line 34
def ticket_valid_for_service?(ticket, service, renew = false)
validate_ticket_for_service(ticket, service, renew).success?
end
|
#validate_ticket_for_service(ticket, service, renew = false) ⇒ Object
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/casino_core/helper/proxy_tickets.rb', line 17
def validate_ticket_for_service(ticket, service, renew = false)
if ticket.nil?
result = ValidationResult.new 'INVALID_TICKET', 'Invalid validate request: Ticket does not exist', :warn
else
result = validate_existing_ticket_for_service(ticket, service, renew)
ticket.consumed = true
ticket.save!
logger.debug "Consumed ticket '#{ticket.ticket}'"
end
if result.success?
logger.info "Ticket '#{ticket.ticket}' for service '#{service}' successfully validated"
else
logger.send(result.error_severity, result.error_message)
end
result
end
|