Доступ к CVS через сервис Apache с использованием SSPI - PullRequest
0 голосов
/ 12 декабря 2008

Я использую сервер Apache (v2.2.10) с mod_python, Python 2.5 и Django. У меня есть небольшое веб-приложение, которое будет показывать текущие проекты, которые есть у нас в CVS, и позволит пользователям создавать сборки из разных проектов (сборка проверяет проект и копирует определенные файлы с удаленным исходным кодом).

На сервере Django dev все работает нормально. Я вижу список проектов в cvs, checkout и т. Д. На рабочем сервере (Apache) я получаю следующую ошибку:

[8009030d] Учетные данные, предоставленные для пакета, не были распознаны

Я пытаюсь войти на сервер CVS, используя SSPI. Ввод той же команды в оболочку будет выполняться правильно.

Это код, который я использую:


def __execute(self, command = ''):
        command = 'cvs.exe -d :sspi:user:password@cvs-serv.example.com:/Projects ls' 
        p = subprocess.Popen(command, stdout=subprocess.PIPE, stderr = subprocess.STDOUT, shell=True)
        return p.communicate()

Я пробовал несколько разных вариантов вещей, и я не могу заставить его работать. Прямо сейчас я считаю, что виновником является Apache.

Буду признателен за любую помощь

1 Ответ

0 голосов
/ 12 декабря 2008

Использование SSPI заставляет меня думать, что вы используете CVSNT, то есть систему Windows; с каким пользователем вы запускаете Apache? Пользователем по умолчанию для служб является SYSTEM, который не использует тот же реестр, что и текущий пользователь.

...