0

私はアクセスルールがグループ/パターンに基づいているのではなく、完全なカスタムルールに基づいてプライベートMavenリポジトリを作成したいと考えています。私はネクサスとjfrogの両方をチェックしました。どちらもシンプルなユーザ/グループ/パターンのアプローチを保っています。そして(AFAICS)は、認証のためのカスタム方法を提供していますが、カスタムアクセスルールを提供していません。Maven認証はどのように機能しますか?

このような理由から、私はカスタムルールを使って簡単なリポジトリを作成することができますか?しかし、Apacheのドキュメントで検索したところ、裏側でどのように認証が行われているかについての明確な説明はありませんでした。

これがどのように行われているかを知っている人はいますか?

+0

もちろん、必要に応じてリポジトリの特定の領域にアクセスルールを設定することもできますが、通常これは必要ありません。限られたアクセスが本当に必要な場合は、例えばNexusで別のリポジトリを作成してください... BTW:「カスタムアクセスルール...」で正確に何を理解していますか? – khmarbaise

+0

これは問題です。アーティファクトの配布は非常に複雑で、カスタムルールの作成やカスタムリポジトリの作成が不可能です。実際には、すべてのユーザーはいつでも変更できる独自のリポジトリを持つ必要があります。 – Panayotis

+0

各ユーザーのリポジトリは意味がありません。アーティファクトが座標で区切られているためです。座標を使用してアーティファクトを分離することによって、ここでの問題は正確に何ですか?なぜあなたはそのようなことをユーザーの基盤に必要としますか?人工物を配布するためには何が複雑ですか?どこに ?あなた自身のローカルリポジトリへのMaven Central? – khmarbaise

答えて

1

認証は基本的にユーザー名とパスワードを連結するHTTP基本認証によって行われ、base64はそれをエンコードします。だから、MavenとApacheはお互いを理解しています。

しかし、Apacheの承認は、あなたが推測したところに基づいています。ディレクトリ(Mavenのアーティファクトグループを表す)、ユーザー名とグループ。したがって、あなたがカスタムApacheモデルを書こうとするのでなければ、それほど多くは得られません。おそらくIPベースのアクセス制御は、ApacheだけでNexus/JFrogより優れていますが、私は年齢の認証設定を見ていません。

+0

私は認可サービス側について話していました。あなたはApacheのモデルをどういう意味ですか? (もちろん、いくつかのコードを書くつもりです) – Panayotis

+0

リポジトリをApacheサーバーにアップロードして静的コンテンツとして提供したいと思っていました。これは間違いなく機能しますが、認証はNexus/JFrogより柔軟性が低くなります。 – fhossfel

+0

あなたはApache Webサーバーですか?おそらくはい、これはいくつかのカスタムPHPスクリプトで終わるだろうということです。現在、JFrog/Nexusはこの問題に対する真の解決策ではありません。より多くの認証メカニズムをサポートしていると言えば、私は「クライアント」自体がサーバーに提供するものがさらに心配です。それは本当に基本的なHTTP/HTTPS認証だけですか? – Panayotis

0

あなたが何をすることができるか、あなたが言及したことを達成するために、ユーザーごとに許可ターゲットを作成することです。 Mavenのすべてのユーザーが同じリポジトリに展開するが、それぞれ異なる名前空間に展開することを意味する。

これはアクセス許可の対象に「インクルードパターン」を使用して行われますので、私の会社名(例:会社/事業名を実際の値に置き換えてください) JFrogで、私は 'artifactory'という名前のプロジェクトに取り組んでいます。次のincludeパターン( '/ com/jfrog/artifactory/**/*')で許可ターゲットを取得します。

this REST APIを使用して自動化するスクリプトを使用して、これらの権限ターゲットを作成することもできます。

つまり、私はこの名前空間にしか到達できません。 それは役に立ちますか?

+0

私はそれが実際にどのように動作するか、つまりmavenが本当に何をしているのかをもっと調べようとしています。これは、準備ツールのより高いレベルの抽象化によってどのように扱われるのでしょうか。 – Panayotis

+0

Mavenはデフォルトで、特に指定されていない限り、匿名で成果物を解決しようとします。今すぐ到達するリポジトリに認証が必要な場合は、チャレンジを受け取り、 'settings.xml'ファイルのユーザー名とパスワードを入力して応答します。 Mavenを設定することで、Mavenに先取り的に認証させることもできます。これにより、Mavenは最初のリクエストの詳細を提供します。 – Ariel

関連する問題