Ошибка аутентификации SVN

Примечание: я прочитал последние 150 вопросов об ошибках в SVN, и ни один из ответов не решил мою проблему.

Я пытаюсь настроить простой сервер SVN, с которого я могу оформить заказ и на котором я могу зафиксировать файлы.

конф /svnserv.conf

[global]
anon-access = none
auth-access = rw
password-db = passwd
#authz-db = authz

конф / пароль

[users]
myuser = password

svn checkout с другой машины работает нормально:

svn co svn://138.25.25.42:3690 test --username myuser --password password

Затем я добавил локальный файл в свою копию локального хранилища

echo "content" > testfile
svn add testfile

но когда я сейчас пытаюсь зафиксировать, я получаю ошибку аутентификации / авторизации (немецкий: Autorisierung) (все 3 одинаковые)

svn ci --username myuser --password password -m "lala"
svn ci . --username myuser --password password -m "lala"
svn ci test --username myuser --password password -m "lala"

глядя на передачи с wireshark, похоже, мое имя пользователя и пароль игнорируются (?)

[SERVER->CLIENT]
( success ( 2 2 ( ) ( edit-pipeline svndiff1 absent-entries commit-revprops depth log-revprops partial-replay ) ) ) ( 
[CLIENT->SERVER]
2 ( edit-pipeline svndiff1 absent-entries depth mergeinfo log-revprops ) 25:svn://138.25.25.42:3690 21:SVN/1.6.15 (r1038135) ( ) ) 
[SERVER->CLIENT]
( success ( ( ANONYMOUS ) 36:ab25c003-0e26-4e93-98a3-6c5d9cc9a979 ) ) ( ANONYMOUS ( 0: ) ) ( success ( ) ) ( success ( 36:ab25c003-0e26-4e93-98a3-6c5d9cc9a979 25:svn://138.25.25.42:3690 ( mergeinfo ) ) ) 
[CLIENT->SERVER]
( commit ( 4:lala ( ) false ( ( 7:svn:log 4:lala ) ) ) ) 
[SERVER->CLIENT]
( failure ( ( 170001 0: 62:/build/buildd/subversion-1.6.5dfsg/subversion/svnserve/serve.c 167 ) ) )     

Любая помощь в получении коммитов будет принята с благодарностью.

редактировать: странно, анонимный заказ работает также; поэтому файлы конфигурации, похоже, игнорируются, я просто не могу понять, почему.

3 ответа

Решение

Решено!

Проблема заключалась в следующем: я установил каталог сервера svn в своем домашнем каталоге, и пользователь, под которым запускался svnserve, не имел доступа к нему, независимо от 777 разрешений в каталоге (так как у него не было разрешений на доступ к родительскому каталогу).).

Похоже, у вас там неправильный токен для "auth-access". Это должно быть "написать", а не "rw". Кроме того, вам, вероятно, следует указать там "область", чтобы пользователи, прошедшие проверку подлинности, знали, что они проверяют.

У меня была похожая проблема с Subversion (аутентификация не удалась). Мое решение было, мне нужно было сократить все пробелы в конфигурационных файлах.

Как и выше: conf/svnserve.conf должен быть:

[global]
anon-access=none
auth-access=write
password-db=passwd
#authz-db = authz

conf / passwd должен быть:

[users]
myuser=password

Конечно, доступ к svnserve.conf и passwd должен быть доступным для процесса svnserve.

Другие вопросы по тегам