Почему сервер CAS моей школы не перенаправляет на мой сайт после аутентификации? - PullRequest
2 голосов
/ 21 марта 2011

Я пытаюсь создать веб-сайт, которым могут пользоваться только студенты Университета Ватерлоо.Он использует CAS для аутентификации.Я начал использовать пакет django_cas .Последовал за шагами.Вот что я тестировал:

перенаправлено на страницу входа в CAS - передано

проверить пользователя на сервере CAS - передано

перенаправить обратно на сайт - не удалось

(ОБНОВЛЕНИЕ: добавление кода для уточнения) РЕШЕНИЕ:

Кажется, у меня неправильный CAS_SERVER_URL.Протокол https вместо http для CAS-сервера моей школы

cas_django нуждается в небольшой конфигурации:

## in settings.py
   CAS_SERVER_URL = 'http://cas-dev.uwaterloo.ca/cas/'
   LOGIN_URL = '/accounts/login/'
   MIDDLEWARE_CLASSES = (
       'django.middleware.common.CommonMiddleware',
       'django.contrib.sessions.middleware.SessionMiddleware',
       'django.middleware.csrf.CsrfViewMiddleware',
       'django.contrib.auth.middleware.AuthenticationMiddleware',
       'django.contrib.messages.middleware.MessageMiddleware',
       'django_cas.middleware.CASMiddleware',
   )

   AUTHENTICATION_BACKENDS = (
       'django.contrib.auth.backends.ModelBackend',
       'django_cas.backends.CASBackend',
   )

## in urls.py
   (r'^accounts/login/$', 'django_cas.views.login'),
   (r'^accounts/logout/$', 'django_cas.views.logout'),

## in views.py
@login_required
def sample(request):
    return render_to_response('sample.html')

Я получил 404 вместо:

Запрошенный URL / cas /логин / http://uwnetwork.shaon.ca/accounts/login/?next=%2Fsample%2F не найден на этом сервере.

Кто-нибудь знает, почему он не сможет перенаправить?

1 Ответ

0 голосов
/ 21 марта 2011

Вы не предоставили достаточно информации, чтобы кто-то мог дать вам значимый ответ.

Попробуйте выполнить следующее:

  1. Убедитесь, что вы правильно установили CAS_SERVER_URL в соответствии с django_casдокументация.
  2. Поговорите со своим университетом, чтобы убедиться, что серверу CAS разрешено перенаправлять на ваше приложение.Поскольку некоторая информация о пользователе передается приложению после успешной аутентификации, возможно, что сервер настроен на аутентификацию пользователей только для сайтов, размещенных в домене .uwaterloo.ca.
...