eap aka_使用API密钥(aka身份验证令牌)部署到Maven Central
eap aka
如何在不使用未加密本地密碼的情況下與Maven Central / Nexus通信(尤其是使用Gradle,但不僅限于此)。
基本原理
不幸的是,Gradle(和許多其他構建工具)沒有提供任何機制來本地加密密碼(或至少編碼)。 沒有這種簡單的活動,例如向同事顯示您的全局Gradle配置( ~/.gradle/gradle.properties ),就很難受,更不用說以明文形式將密碼存儲在磁盤上帶來更大的風險了(請參閱以及Sony Pictures Entertainment hack )。 它是Gradle,因此在所有Groovy魔術的支持下,可以在Linux上實現與系統密鑰環的集成以獲取密碼,但是我不知道有任何現有的插件/機制可以這樣做,我寧愿寧愿不寫它。
另一個問題是,如今,在無處不在的自動化和云環境中,通常使用允許執行給定操作的API密鑰。 但是,其丟失不會給攻擊者提供劫持該帳戶的可能性(例如,令牌既不能用于登錄管理面板,也不能用于更改電子郵件或密碼,而這需要額外的身份驗證)。
如果需要在CI服務器上保留有效的憑據以進行自動甚至連續發布,這一點非常重要。 由于有了gradle-nexus-staging-plugin ,因此無需在Nexus GUI中執行任何手動步驟即可將工件升級到Maven Central,因此,這是我要在Codearte中處理我的私人項目和FOSS項目的下一個問題。
Nexus API密鑰生成
互聯網搜索“ Maven中央api密鑰”并沒有幫助,因此我開始研究Nexus REST API文檔,發現實際上有一種(未知的)方式可以生成和使用API??密鑰(又名身份驗證令牌)。
在Nexus中生成API密鑰
摘要
使用API??密鑰可以將工件部署到Maven Central / Nexus很好,并且設置起來非常容易。 有人可能會爭辯說,許可策略是粗粒度的(除了密碼/電子郵件更改外,什么也不做,或所有其他操作),但在我看來,這對于工件存儲庫系統類來說似乎足夠了。 另外,這種方法也應與Sbt,Ivy,Leiningen以及其他嘗試將工件上載到Maven Central的其他方法一起使用(包括通過使用settings-security.xml消除主密碼加密的限制來包括Maven本身)。 希望該帖子將使其廣為人知。
翻譯自: https://www.javacodegeeks.com/2015/09/deploy-to-maven-central-using-api-key-aka-auth-token.html
eap aka
總結
以上是生活随笔為你收集整理的eap aka_使用API密钥(aka身份验证令牌)部署到Maven Central的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pt电脑版(p p t下载)
- 下一篇: javafx窗体程序_JavaFX真实世