【问题标题】:Is it possible to use ml-gradle on MarkLogic 9 without the Admin role?是否可以在没有管理员角色的情况下在 MarkLogic 9 上使用 ml-gradle?
【发布时间】:2017-12-19 15:43:07
【问题描述】:

我正在使用 MarkLogic 9 上的 ml-gradle,但想使用最小权限原则配置运行 ml-gradle 的 MarkLogic 帐户。是否可以在 MarkLogic 中配置 ml-gradle 用户以获得更精细的权限,还是我被困在使用管理员角色? 部署将是相当标准的,创建文档、模块、索引、查询选项等。

谢谢, --丹

【问题讨论】:

    标签: marklogic marklogic-9 ml-gradle


    【解决方案1】:

    要创建应用服务器、数据库等,您需要manage-admin 权限。要创建文档和以其他方式修改数据库内容,您通常需要 rest-writer。要阅读文档或进行搜索,您需要 rest-reader。最重要的是,您可能需要特定文档的权限。

    有关详细信息,请参阅 REST 应用程序开发人员指南的 Basic Security Requirements 部分。

    【讨论】:

    • 谢谢,定义索引怎么样?这需要rest-writer还是其他东西?
    • 另外,请注意,MLGradle 有许多用户配置,用于各种连接方式(配置等)。请习惯此示例文件中的设置。 github.com/marklogic-community/ml-gradle/blob/master/examples/… 我自己设置了 3-4 个用户,以确保在我认为它已经以我的特定用户身份连接之后,我不会让用户仍然以管理员身份连接。
    • 经过一段时间的延迟,我终于回到了这个工作。我仍然遇到最小权限的问题。当我具有“管理员”角色时,我可以成功运行 ml-gradle 项目以加载新模块,但是当我将其限制为角色时:manage-user qconsole-user rest-reader rest-writer Execute Privileges: any-uri any- collection create-trigger protect-collection 它不会上传新模块。我可能缺少任何许可/角色吗?谢谢,--丹
    • 不确定您缺少什么,但请检查错误日志(请注意,在 ML9 中,每个应用服务器都有单独的日志)。那里应该有一个错误,告诉您您缺少什么特权。
    【解决方案2】:

    创建用户和角色也需要“安全”角色。管理文档 - http://docs.marklogic.com/REST/management - 很好地解释了每个资源需要哪些权限。

    此外,ml-gradle 属性参考 - https://github.com/marklogic-community/ml-gradle/wiki/Property-reference - 描述了 ml-gradle 建立的不同连接以及用于什么目的,尽管有一张票可以提供更全面的不同用户、角色和连接的文档。

    【讨论】:

      猜你喜欢
      • 2023-03-24
      • 2015-11-12
      • 1970-01-01
      • 2018-07-29
      • 1970-01-01
      • 2011-03-01
      • 2018-12-13
      • 1970-01-01
      • 2017-09-17
      相关资源
      最近更新 更多