Git Smart HTTP - аутентификация пользователя для определенных репозиториев - PullRequest
1 голос
/ 16 января 2011

Мне было интересно, как вы проходите аутентификацию между git-репозиториями для smart http.

Например, у меня есть все мои репозитории в /repos/, однако я бы хотел назначить «Джона Доу» только двум из них.Другой я хочу, чтобы "Джейн Доу" доступ;однако я не хочу, чтобы кто-либо из них имел доступ к репозиториям друг друга.

Кстати: У меня есть аутентификация пользователя, работающая в общем с http auth,отделяя прив.для определенных пользователей это то, что я действительно после.

Ответы [ 2 ]

0 голосов
/ 20 января 2011

Я говорил с разработчиком https://github.com/sitaramc/gitolite, и он указал мне в направлении:

in short, you need a "mini gitolite"?

(1) set it up the way my man page says but instead of using
gl-auth-command use your script

(2) your script should do/deal with the following:

 - it should take the authenticated username from $REMOTE_USER
 - it should look at the PATH_INFO, REQUEST_URI, etc., to find out
what repo he wants to access and whether he wants to read or write
(you can see the code in simulate_ssh_connection() in my code for
that)
 - then use whatever logic you want to decide if you should allow or
reject the request

If you allow it you must "exec" the original git-http-backend.
0 голосов
/ 17 января 2011

Используя http в качестве транспорта, вы можете использовать WebDAV .Официальное руководство: здесь , но в интернете много уроков.

...