docs: def sso_entry(request):
      """ Entrypoint view for SSO. Gathers the parameters from the HTTP request, stores them in the session
          and redirects the requester to the login_process view.
      """
      if request.method == 'POST':
          passed_data = request.POST
          binding = BINDING_HTTP_POST
      else:
          passed_data = request.GET
          binding = BINDING_HTTP_REDIRECT
  
      request.session['Binding'] = binding
  
      try:
          request.session['SAMLRequest'] = passed_data['SAMLRequest']
      except (KeyError, MultiValueDictKeyError) as e:
          return HttpResponseBadRequest(e)
      request.session['RelayState'] = passed_data.get('RelayState', '')
      # TODO check how the redirect saml way works. Taken from example idp in pysaml2.
      if "SigAlg" in passed_data and "Signature" in passed_data:
          request.session['SigAlg'] = passed_data['SigAlg']
          request.session['Signature'] = passed_data['Signature']
      return HttpResponseRedirect(reverse('djangosaml2idp:saml_login_process'))