Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven Sonatype Nexus是否可以配置为限制用户可以部署哪些工件?_Maven_Nexus - Fatal编程技术网

Maven Sonatype Nexus是否可以配置为限制用户可以部署哪些工件?

Maven Sonatype Nexus是否可以配置为限制用户可以部署哪些工件?,maven,nexus,Maven,Nexus,我已经安装了Nexus 2.0.6,并且与LDAP服务器的集成正在运行(仅限身份验证)。有没有办法配置Nexus,以便只有一组开发人员能够部署给定的工件或组 我基本上不希望团队a中的开发人员部署团队B负责的工件。您可以使用所述的存储库目标、权限和角色对存储库进行分区。几个月前我测试过这个,它似乎运行得很好。在Nexus2.0.1下,这是我已经完成并验证过的解决方案 注意事项: 这允许将“工件上载”选项限制为目录层次结构。 这与“部署”或“发布准备”并不完全相同 步骤: 从目前所有拥有它的人身上移

我已经安装了Nexus 2.0.6,并且与LDAP服务器的集成正在运行(仅限身份验证)。有没有办法配置Nexus,以便只有一组开发人员能够部署给定的工件或组


我基本上不希望团队a中的开发人员部署团队B负责的工件。

您可以使用所述的存储库目标、权限和角色对存储库进行分区。几个月前我测试过这个,它似乎运行得很好。

在Nexus2.0.1下,这是我已经完成并验证过的解决方案

注意事项:
这允许将“工件上载”选项限制为目录层次结构。
这与“部署”或“发布准备”并不完全相同

步骤:

  • 从目前所有拥有它的人身上移除你不想拥有的“工件上传”的单一特权

  • 创建“存储库目标”,其中包括要授予访问权限的目录掩码。例如,
    */com/mycompany/target dir/*

    仔细检查掩码,它以句号星号开始,以句号星号结束

  • 创建映射到刚创建的存储库目标的“存储库权限”。通常我会在这个存储库特权名称中包含repo名称,比如“releases.com.mycompany.target dir”。这将为所述目录创建CRUD条目(4)

  • 接下来,根据刚才创建的存储库权限创建“角色”(4),加上“工件上载”。角色总共有5个条目。使用此处的“应用过滤器”帮助您查找这些项目。我将这个角色命名为“Upload.role.Releases.Target Dir”。同样,完成后,此角色应该有5个条目:
    工件上传
    com.mycompany.target目录(创建)
    com.mycompany.target目录(删除)
    com.mycompany.target目录(读取)
    com.mycompany.target目录(更新)

    这就是将上载角色限制到此repo.directory的原因

  • 创建用户如果该用户不存在,请分配密码

  • 为用户提供以下角色:
    Nexus部署
    Repo:所有Maven存储库(读取)
    用户界面:基本用户界面权限
    Upload.Role.relasses.Target-Dir

  • 点击save,你就成功了。稍后,您可以使用相同的方法为其他repo(例如快照或第三方)创建新角色,并保留相同的目录掩码