6

Nexus 2.0.6をインストールし、LDAPサーバーとの統合が機能しています(認証のみ)。一連の開発者のみが特定のアーティファクトまたはグループをデプロイできるようにNexusを構成する方法はありますか?

基本的に、チームAの開発者がチームBが担当するアーティファクトをデプロイすることは望んでいません。

4

2 に答える 2

6

この Sonatype ブログ投稿 で説明されているように、リポジトリ ターゲット、権限、およびロールを使用してリポジトリを分割できます。数か月前にこれをテストしましたが、うまく機能しているように見えました。

于 2012-07-03T16:10:56.707 に答える
2

Nexus 2.0.1 では、これが私が作業して検証した解決策です。

警告:
これにより、「アーティファクトのアップロード」オプションをディレクトリ階層に制限できます。
これは、「デプロイ」や「リリース準備」とはまったく同じではありません。

手順:

  1. 「Artifact Upload」の単一の特権を、現在持っているすべてのものから削除します。これを持ちたくないということです。

  2. アクセスを許可する場所のディレクトリ マスクを含む "Repository-Target" を作成します。元。 .*/com/mycompany/target-dir/.*
    マスクを再確認してください。ピリオドとアスタリスクで始まり、ピリオドとアスタリスクで終わります。

  3. 作成したばかりの Repository-Target にマップする「Repository-Privilege」を作成します。通常、「releases.com.mycompany.target-dir」のように、このリポジトリ権限名にリポジトリ名を含めます。これにより、前述のディレクトリの CRUD エントリ (4) が作成されます。

  4. 次に、作成したばかりのリポジトリ権限 (4)「アーティファクトのアップロード」に基づいて「ロール」を作成します。ロールの合計 5 つのエントリ。ここで「フィルターを適用」を使用して、これらのアイテムを見つけやすくします。このロールに「Upload.Role.Releases.Target-Dir」のような名前を付けます。繰り返しますが、完了すると、このロールの 5 つのエントリが存在するはずです:
    Artifact Upload
    com.mycompany.target-dir(create)
    com.mycompany.target-dir(delete)
    com.mycompany.target-dir(read)
    com.mycompany.target -dir(update)

    これは、アップロードの役割をこの repo.directory に制限するものです。

  5. ユーザーがまだ存在しない場合は作成し、パスワードを割り当てます。

  6. ユーザーに次のロールを付与します:
    Nexus デプロイ
    リポジトリ: すべての Maven リポジトリ (読み取り)
    UI: ベース UI 権限
    Upload.Role.Relases.Target-Dir

保存を押してください。後で、この同じアプローチを使用して、他のリポジトリ (スナップショットやサード パーティなど) の新しいロールを作成し、同じディレクトリ マスクを保持できます。

于 2013-08-08T15:17:59.527 に答える