Sonatype Nexus是一种实用的访问控制解决方案

时间:2015-12-30 16:35:55

标签: nexus access-control sonatype

我正在部署最新的v2 Nexus Pro,并发现访问控制模型过于复杂。我正在寻找一个简单的解决方案(更好的是也可以使用新的v3)。我们是.net商店,这是要求:

  1. 我想创建至少两个repos:一个本地NuGet repo(存储 应用程序的NuGet包和Maven2 repo(存储所有 应用程序最终部署单位)
  2. 只有管理员和构建用户才能上传到这些回购。

  3. 每个人都可以查看所有内容,因此开发人员可以下载所有软件包。

  4. 我已经集成了LDAP,任何人都可以给我一步一步的程序来设置它,例如。对于构建ID。

    由于 冯吉荣

3 个答案:

答案 0 :(得分:0)

默认行为完全符合您的要求。您只需创建所需的存储库,并使用您创建的外部角色映射为相应的LDAP角色提供写访问权。

详细介绍in the documentation

继续您的详细问题:

  • 如果您在LDAP中没有组,则必须将相应的角色分配给存储库管理器中的各个用户,为每个构建单独的用户/角色可能会过度使用
  • repo目标是到存储库的路径的正则表达式,并且实际上只适用于Maven存储库,对于NuGet我不会使用它们,除非你对可以使用的包有严格的命名约定
  • 您可以使用存储库权限向个人授予对用户的写入权限

所以步骤将是例如是

  1. 创建存储库,将自动创建存储库的相应权限
  2. 创建角色并授予对角色的所需存储库访问权限
  3. 将角色分配给用户

答案 1 :(得分:0)

以下是我所做的:

  1. 创建一个名为NuGet_OTPP的本地NuGet仓库。我看到了一种特权 创建名为NuGet_OTPP(视图),而不是其他CRUD权限。
  2. 创建一个名为NuGet_OTPP的新存储库目标权限,目标为“All(nuget)”,存储库为“NuGet OTPP”。这将创建四个NuGet_OTPP(CRUD)权限。
  3. 创建一个名为“OTPP Deployer”的角色,添加以上四个NuGet_OTPP(CRUD)权限,Nexus匿名角色,UI:基本UI权限,所有存储库 - (读取),所有存储库 - (视图),工件上传。< / LI>
  4. 在Nexus中创建一个名为otpp_deployer的用户(这已经是LDAP中的域用户),分配上述角色。

  5. 更改了默认用户admin和部署的密码,以便其他人无法使用它们。

  6. 我错过了什么吗?这是一个全新的装置。

答案 2 :(得分:0)

@Manfred Moser,下面是角色的截图: enter image description here