如何在Marklogic Datahub Framework中使用混淆的密码

时间:2019-06-18 06:51:18

标签: marklogic marklogic-dhf

我试图避免在服务器的配置文件中使用纯文本密码。在这种情况下,我想使用gradle-credentials(https://github.com/etiennestuder/gradle-credentials-plugin)插件来模糊它们的价值。

我已经导入了必要的依赖关系,现在能够使用加密的密码创建“ gradle.encrypted.properties”文件。我当前的问题是,当我尝试运行gradle wrapper命令并应用 com.marklogic.ml-data-hub 插件时,DHF连接到Application Server并失败,然后我才能使用加密的凭据。

我认为我缺少一些细节,因为Marklogic文档指出我们可以从gradle.properties文件中删除password属性。

我的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']   没有提供密码

1 个答案:

答案 0 :(得分:0)

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

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

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