Class: Cassette::Rubycas::SingleSignOutConstraint
- Inherits:
-
Object
- Object
- Cassette::Rubycas::SingleSignOutConstraint
show all
- Defined in:
- lib/cassette/rubycas/single_sign_out_constraint.rb
Instance Method Summary
collapse
Instance Method Details
#matches?(request) ⇒ Boolean
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/cassette/rubycas/single_sign_out_constraint.rb', line 6
def matches?(request)
if (content_type = request.["CONTENT_TYPE"]) &&
content_type =~ /^multipart\//
return false
end
if request.post? &&
request.request_parameters['logoutRequest'] &&
[request.request_parameters['logoutRequest'],
URI.unescape(request.request_parameters['logoutRequest'])]
.find { |xml| xml =~ /^<samlp:LogoutRequest.*?<samlp:SessionIndex>(.*)<\/samlp:SessionIndex>/m }
Cassette.logger.debug "Intercepted a single sign out request on #{request}"
return true
end
false
end
|