【maven实战】35-为项目分配独立的仓库

在组织内部,如果所有项目都部署快照及发布版本构件至同样的仓库,就会存在潜在的冲突及安全问题,我们不想让项目A的部署影响到项目B,反之亦然。解决的方法就是为每个项目分配独立的仓库,并且只将仓库的部署,修改,删除权限赋予该项的成员,其他用户只能读取,下载和搜索该仓库的内容。

假设项目名臣为Foo,首先为该项目建立两个宿主仓库Foo Snapshot和Foo Release,分别用来部署快照构件和发布构件。有了仓库之后,就需要创建基于仓库的增,删,改,查权限。在Nexus中,这样的权限是基于Repository Target建立的,Repository Target实际上是一系列正则表达式--匹配,以检查权限是否正确。单击左边导航栏中的Repository Targets链接,就能看到如下的页面:

图中选中了All(Maven2)这一Repository Target,在下方可以看到他包含了一个值为*的正则表达式,表示该Repository Target能够匹配仓库下的任何路径。

下一步就是基于该Repository Target和Foo Release,Foo Snapshots两个仓库建立权限。单击页面左边导航栏中的Privileges链接进入权限页面,然后单击Add按钮,选择Repository Target  Privilege,创建对应于Foo Release的权限。

选择Foo Release仓库和All(Maven2),表示创建匹配Foo Release仓库任何路径的权限。单击Save按钮之后,就能在权限列表中看到相应的增,删,改,查权限。如下:

然后遵循同样的步骤,为Foo Snapshot建立增删改查权限。

下一步是创建一个包含上述权限的角色。单击导航栏中的Roles进入页面,再单击页面上方的Add按钮并选择Nexus Role,将之前创建的权限加入到该角色中。

角色创建完成之后,根据需要将其分配给Foo项目的团队成员。这样其他团队的成员默认只能读取Foo Release和Foo Snapshot的内容,而拥有Foo Deployer角色的用户就可以执行部署构件等操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值