Sotto Nexus 2.0.1, questa è la soluzione che ho elaborato e verificato.
Avvertenze:
Ciò consente di limitare l'opzione "Caricamento artefatto" a una gerarchia di directory.
Questo non è esattamente lo stesso di "deploy" o in congiunzione con "release prepare".
Passi:
Togliere il singolo privilegio di "Artefatto Upload" da tutto ciò che attualmente hanno, che non si vuole avere.
Creare il "target di repository" che include la maschera di directory di cui si desidera fornire l'accesso. Ex. .*/com/mycompany/target-dir/.*
Doppio controllo della maschera, inizia con l'asterisco di periodo E termina con l'asterisco di periodo.
Creare il "Privilegio di repository" che esegue il mapping al repository: destinazione appena creata. In genere includo il nome del repository in questo repository-nome-privilegio, come "releases.com.mycompany.target-dir". Questo crea le voci CRUD (4) per detta directory.
Successivamente, creare il "Ruolo" in base ai privilegi di repository appena creati (4), più "Caricamento artefatto". Totale di 5 voci per il ruolo. Usa il "Apply Filter" qui per aiutarti a trovare questi elementi. Io chiamo questo ruolo qualcosa come "Upload.Role.Releases.Target-Dir". Anche in questo caso, una volta terminato ci dovrebbero essere 5 voci per questo ruolo:
Artifact Carica
com.mycompany.target-dir (creare)
com.mycompany.target-dir (cancellare)
com.mycompany.target-dir (leggi)
com.mycompany.target-dir (update)
Questo è ciò che vincola il ruolo di caricamento a questo repo.directory.
Creare l'utente se non esiste già, assegnare la password.
Dare all'utente i seguenti ruoli:
Nexus Deployment
Repo: Tutti Maven Repositories (Leggi)
UI: Base privilegi UI
Upload.Role.Relases.Target-Dir
Hit save e ce l'hai.In seguito, puoi utilizzare lo stesso approccio per creare un nuovo ruolo per altri repository (ad esempio Snapshot o 3rd party) e mantenere la stessa maschera di directory.
fonte
2013-08-08 15:17:59