1

スマートhttpのgitリポジトリ間でどのように認証するのか疑問に思いました。

たとえば、私はすべてのリポジトリを持っていますが/repos/、そのうちの2つだけに「JohnDoe」を割り当てたいと思います。もう1つは、「JaneDoe」にアクセスしてもらいたいものです。ただし、どちらか一方が互いのリポジトリにアクセスできるようにしたくありません。

ちなみに、 私は一般的にhttp authを使用してユーザー認証を行っていますが、これは分離特権です。特定のユーザーにとっては、私が本当に求めているものです。

4

2 に答える 2

0

トランスポートとしてhttpを使用すると、 WebDAVを使用できます。公式のハウツーはここにありますが、チュートリアルはWeb上にたくさんあります。

于 2011-01-16T23:09:26.233 に答える
0

私はhttps://github.com/sitaramc/gitoliteの開発者と話をしましたが、彼は私を次の方向に向けました。

要するに、あなたは「ミニジトライト」が必要ですか?

(1)私のマニュアルページのように設定しますが、使用する代わりに
gl-auth-commandはスクリプトを使用します

(2)スクリプトは、次のことを実行/処理する必要があります。

 -$REMOTE_USERから認証されたユーザー名を取得する必要があります
 -PATH_INFO、REQUEST_URIなどを調べて確認する必要があります
アクセスしたいレポと、読み取りまたは書き込みのどちらを希望するか
(私のコードのsimulate_ssh_connection()でコードを見ることができます
それ)
 -次に、許可するかどうかを決定するロジックを使用します。
リクエストを拒否する

許可する場合は、元のgit-http-backendを「実行」する必要があります。
于 2011-01-19T22:17:07.050 に答える