0

我试图避免在服务器的配置文件中使用纯文本密码。既然如此,我想使用 gradle-credentials ( https://github.com/etiennestuder/gradle-credentials-plugin ) 插件来混淆它们的价值。

我已经导入了必要的依赖项,现在可以使用加密密码创建“gradle.encrypted.properties”文件。我当前的问题是,当我尝试运行 gradle 包装器命令并应用com.marklogic.ml-data-hub插件时,DHF 连接到应用程序服务器并在我能够使用加密凭据之前失败。

我认为我遗漏了一些细节,因为 Marklogic 文档指出我们可以从 gradle.properties 文件中删除密码属性。

我的 build.gradle 文件包含以下内容:

buildscript {
  dependencies {
    classpath fileTree(dir: "ml-gradle-dependencies", include: "*.jar")
  }
}

apply plugin: "com.marklogic.ml-data-hub"
apply plugin: "nu.studer.credentials" 
apply plugin: "net.saliman.properties"
apply plugin: "java"
apply plugin: "idea"
apply plugin: "eclipse"

repositories {
    mavenLocal()
}

ext {
  mlManageConfig.password = credentials.mlPassword
  mlManageConfig.securityPassword = credentials.mlPassword // only needed if setting mlSecurityUsername

  mlAdminConfig.password = credentials.mlPassword

  println mlAdminConfig.password

  mlAppConfig.restAdminPassword = credentials.mlPassword
  mlAppConfig.appServicesPassword = credentials.mlPassword

  // Re-initialize the connections to the Admin and Manage servers
  mlManageClient.manageConfig=mlManageConfig
  mlAdminManager.adminConfig=mlAdminConfig
}

dependencies {
    // this allows you to write custom java code that depends
    // on the Data Hub Framework library

    compile 'com.marklogic:marklogic-data-hub:4.1.1'
    compile 'com.marklogic:marklogic-xcc:9.0.7'
}

从 gradle.properties 文件中删除mlPassword后,出现以下错误

其中:构建文件 'C:\workspaces\CAPL\tmp\marklogic\dhf\build.gradle' 行:7

出了什么问题:评估根项目“dhf”时出现问题。

无法应用插件 [id 'com.marklogic.ml-data-hub'] 未提供密码

4

1 回答 1

0

marklogic-gradle wiki 中有一个关于此的页面:

https://github.com/marklogic-community/ml-gradle/wiki/Encrypting-passwords

简短的回答是,gradle 生态系统中有现有的插件来管理密码,marklogic-gradle 也可以与这些插件一起使用。

于 2019-06-18T22:10:12.787 回答