@@ -34,6 +34,11 @@ class OneLogin_Saml2_Auth(object):
3434 SAML Response, a Logout Request or a Logout Response).
3535 """
3636
37+ authn_request_class = OneLogin_Saml2_Authn_Request
38+ logout_request_class = OneLogin_Saml2_Logout_Request
39+ logout_response_class = OneLogin_Saml2_Logout_Response
40+ response_class = OneLogin_Saml2_Response
41+
3742 def __init__ (self , request_data , old_settings = None , custom_base_path = None ):
3843 """
3944 Initializes the SP SAML instance.
@@ -103,7 +108,7 @@ def process_response(self, request_id=None):
103108
104109 if 'post_data' in self .__request_data and 'SAMLResponse' in self .__request_data ['post_data' ]:
105110 # AuthnResponse -- HTTP_POST Binding
106- response = OneLogin_Saml2_Response (self .__settings , self .__request_data ['post_data' ]['SAMLResponse' ])
111+ response = self . response_class (self .__settings , self .__request_data ['post_data' ]['SAMLResponse' ])
107112 self .__last_response = response .get_xml_document ()
108113
109114 if response .is_valid (self .__request_data , request_id ):
@@ -149,7 +154,7 @@ def process_slo(self, keep_local_session=False, request_id=None, delete_session_
149154
150155 get_data = 'get_data' in self .__request_data and self .__request_data ['get_data' ]
151156 if get_data and 'SAMLResponse' in get_data :
152- logout_response = OneLogin_Saml2_Logout_Response (self .__settings , get_data ['SAMLResponse' ])
157+ logout_response = self . logout_response_class (self .__settings , get_data ['SAMLResponse' ])
153158 self .__last_response = logout_response .get_xml ()
154159 if not self .validate_response_signature (get_data ):
155160 self .__errors .append ('invalid_logout_response_signature' )
@@ -165,7 +170,7 @@ def process_slo(self, keep_local_session=False, request_id=None, delete_session_
165170 OneLogin_Saml2_Utils .delete_local_session (delete_session_cb )
166171
167172 elif get_data and 'SAMLRequest' in get_data :
168- logout_request = OneLogin_Saml2_Logout_Request (self .__settings , get_data ['SAMLRequest' ])
173+ logout_request = self . logout_request_class (self .__settings , get_data ['SAMLRequest' ])
169174 self .__last_request = logout_request .get_xml ()
170175 if not self .validate_request_signature (get_data ):
171176 self .__errors .append ("invalid_logout_request_signature" )
@@ -179,7 +184,7 @@ def process_slo(self, keep_local_session=False, request_id=None, delete_session_
179184
180185 in_response_to = logout_request .id
181186 self .__last_message_id = logout_request .id
182- response_builder = OneLogin_Saml2_Logout_Response (self .__settings )
187+ response_builder = self . logout_response_class (self .__settings )
183188 response_builder .build (in_response_to )
184189 self .__last_response = response_builder .get_xml ()
185190 logout_response = response_builder .get_response ()
@@ -395,7 +400,7 @@ def login(self, return_to=None, force_authn=False, is_passive=False, set_nameid_
395400 :returns: Redirection URL
396401 :rtype: string
397402 """
398- authn_request = OneLogin_Saml2_Authn_Request (self .__settings , force_authn , is_passive , set_nameid_policy , name_id_value_req )
403+ authn_request = self . authn_request_class (self .__settings , force_authn , is_passive , set_nameid_policy , name_id_value_req )
399404 self .__last_request = authn_request .get_xml ()
400405 self .__last_request_id = authn_request .get_id ()
401406
@@ -449,7 +454,7 @@ def logout(self, return_to=None, name_id=None, session_index=None, nq=None, name
449454 if name_id_format is None and self .__nameid_format is not None :
450455 name_id_format = self .__nameid_format
451456
452- logout_request = OneLogin_Saml2_Logout_Request (
457+ logout_request = self . logout_request_class (
453458 self .__settings ,
454459 name_id = name_id ,
455460 session_index = session_index ,
0 commit comments