帮我报名吧!
更新:从2021年5月1日起,Bintray服务将不再可用(ConanCenter和JCenter不受影响),欲了解更多信息,请阅读Centers弃用博客
Bintray Premium为您提供了很酷的新功能,如私有存储库,权限管理,更多的存储等等。使用高级帐户的最大好处之一是能够为存储库的内容创建有效的、签名的url。
你说签名url ?那是什么?
有签名的URL是一个模糊的URL,其生命周期(可能)有限。当您的工件发布在私有存储库中时,每个工件对未经授权的Bintray用户都是隐藏的。如果你想允许任何Bintray用户,甚至非Bintray用户下载你的包,你可以生成一个一次性的唯一URL,并带有一个选项来限制其有效性,这样它就会在一定时间后过期。您还可以随时撤销任何未执行的url。
它是如何工作的?
当您成为Bintray的高级用户时,您的帐户拥有唯一的,内部的,私有的和公共的密钥。您决定签署的URL将使用这些密钥进行加密和解密。
比如user "srubin"拥有一个名为"artifactory”。
这个私人回购包含一个文件,"artifactory.rar,不允许公众进入。只有获得授权的用户才能使用标准下载链接(即:
https://dl.bintray.com/srubin/artifactory/com/jfrog/artifactorypro/artifactory.rar
为了允许这个文件的一次性下载,我们将使用一个简单的REST调用为它生成一个签名URL:
curl -XPOST -usrubin:APIKEY "https://api.bintray.com/signed_url/srubin/artifactory/com/jfrog/artifactorypro/artifactory.rar"
回应:
{"url":"https://dl.bintray.com/srubin/artifactory/com/jfrog/artiafctorypro/artifactory.rar?expiry=1415101346415&signature=BfRaL2HDbCDsPyPThAnlI%2B0TG26NcH4i0ugyKZ%2FjevLiNfEdHXyUh0Q1NNGc1Pz7V1nZkeh9RAafrUyUE%2FMOFQ%3D%3D"}
默认情况下,这个URL将在24小时内有效,但我们可以通过在一个简单的JSON配置文档中指定过期时间来更改它:
curl -XPOST -usrubin:APIKEY -H "Content-Type: application/json" -d "{\"expiry\":7956915742000}" https://api.bintray.com/signed_url/srubin/artifactory/com/jfrog/artiactorypro/artifactory.rar"
回应:
{"url":"https://dl.bintray.com/srubin/artifactory/com/jfrog/artiactorypro/artifactory.rar?expiry=7956915742000&signature=g5OC3RXkFhnnFYfsgqFXw9J%2FfmwCzeIsd%2FHCRgm5VjCAhrzij1GPuAv0JwZPhGD0mEqs1y2WcQ77LMrDzp9%3D%3D"}
关于这个API的更多细节可以在我们的文档中找到。
总结
签名的,过期的url是一个很酷的新功能的Bintray。它允许您自动生成一次性下载url,并将它们分发给任何最终用户。
我们将很快扩展这一功能,使其更酷。继续关注,看看我们为你准备了什么!
