我已經安裝了Nexus 2.0.6,並且與我的LDAP服務器的集成工作正常(僅限驗證)。有沒有辦法配置Nexus,以便只有一組開發人員能夠部署給定的工件或組?可以將Sonatype Nexus配置爲限制用戶可以部署哪些工件?
我基本上不希望團隊A中的開發人員部署團隊B負責的工件。
我已經安裝了Nexus 2.0.6,並且與我的LDAP服務器的集成工作正常(僅限驗證)。有沒有辦法配置Nexus,以便只有一組開發人員能夠部署給定的工件或組?可以將Sonatype Nexus配置爲限制用戶可以部署哪些工件?
我基本上不希望團隊A中的開發人員部署團隊B負責的工件。
您可以使用如in this Sonatype blog post所述的存儲庫目標,權限和角色對存儲庫進行分區。幾個月前,我測試了它,它似乎運作良好。
在Nexus 2.0.1下,這是我通過並驗證的解決方案。
注意:
這允許將「Artifact Upload」選項限制爲目錄層次結構。
這與「部署」或與「發佈準備」結合不完全相同。
步驟:
從所有目前有它刪除「神器上傳」的單特權,你不想擁有它。
創建包含您要授予訪問權限的目錄掩碼的「Repository-Target」。防爆。 .*/com/mycompany/target-dir/.*
仔細檢查掩碼,它以句號星號開始,並以句號星號結尾。
創建映射到您剛剛創建的Repository-Target的「Repository-Privilege」。通常,我在此存儲庫特權名稱中包含repo-name,例如「releases.com.mycompany.target-dir」。這爲所述目錄創建了CRUD條目(4)。
接下來,根據您剛剛創建的存儲庫權限(4),加「Artifact Upload」創建「角色」。該角色共有5個條目。使用此處的「應用過濾器」來幫助您找到這些項目。我將這個角色命名爲「Upload.Role.Releases.Target-Dir」。再者,在完成時應該有這個角色的5項:
神器上傳
com.mycompany.target-DIR(創建)
com.mycompany.target-DIR(刪除)
com.mycompany.target-DIR (閱讀)
com.mycompany.target-dir(更新)
這是將上傳角色限制到此repo.directory的原因。
創建用戶,如果它尚不存在,分配密碼。
給用戶提供了以下角色:
的Nexus部署
回購:所有Maven資源庫(讀)
UI:基本UI特權
Upload.Role.Relases.Target-DIR
點擊保存,你已經得到它。稍後,您可以使用相同的方法爲其他回購(例如快照或第三方)創建新角色,並保持相同的目錄掩碼。