Управление доступом пользователей к нескольким git репозиториям на сервере Linux, предоставление доступа к репо на основе ключа S SH? - PullRequest
0 голосов
/ 16 апреля 2020

У меня есть сервер Linux с некоторыми простыми репозиториями git, которые используются удаленно несколькими разработчиками. В настоящее время все разработчики имеют доступ ко всем репозиториям.

Я использую только одну учетную запись пользователя git на сервере, и каждый отдельный разработчик имеет свой собственный ключ S SH, через который они могут получить доступ * От 1017 * до S SH.

Теперь я собираюсь добавить еще нескольких разработчиков, но они должны иметь доступ только к некоторым из git репозиториев, но не ко всем.

Возможно ли это сделать, при этом сохраняя единственную действительную учетную запись пользователя Linux (т.е. мой пользователь git) и различая guish между разработчиками S SH ключи для управления доступом к различным репозиториям?

Я читал некоторые подходы, используя gitolite, не уверен, что он все еще актуален. Что мне понравилось в моем подходе, так это то, что он не требует никаких дополнительных настроек или программного обеспечения, он просто базовый c git и S SH. Возможно ли это, если я хочу назначить разные права доступа для каждой клавиши S SH?

1 Ответ

0 голосов
/ 17 апреля 2020

Если вы используете стандартный сервер OpenS SH и хотите предоставить ограниченным пользователям несколько репозиториев, то нет, вы не можете этого сделать. Вы можете использовать OpenS SH authorized_keys файл, чтобы ограничить определенный ключ определенной командой c, но только одной такой командой, поэтому вы не можете различить guish в нескольких репозиториях.

Если вы хотите использовать общего системного пользователя и несколько репозиториев с разными правами доступа пользователей, то Gitolite - хороший выбор. Он все еще используется во многих местах и ​​его не так сложно настроить. Вы также можете настроить HTTP-доступ с ним (с подходящим HTTP-сервером), если вы этого хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...