更新默认角色和筛选器 已弃用

PUT /groups/{groupId}/apps/{appId}/services/{serviceId}/default_rule

修改数据源的默认角色和筛选器。

路径参数

application/json

body 必需

更新的默认规则配置对象。

  • _id 字符串 必需

    默认规则的唯一 ObjectId 标识符。

  • 角色 大量[对象]

    默认用户角色的有序列表。

    隐藏角色属性 显示角色属性 对象
    • _id 字符串

      角色的唯一 ObjectId 标识符。

    • document_filters 对象
      隐藏 document_filters 属性 显示 document_filters 属性 对象
      • 读
        以下之一:

        如果角色可以读取文档,则规则表达式的计算结果为 true。

        如果角色可以读取文档,则规则表达式的计算结果为 true。

      • 写
        以下之一:

        如果角色可以写入文档,则规则表达式的计算结果为 true。

        如果角色可以写入文档,则规则表达式的计算结果为 true。

    • 名称 字符串

      角色的名称。

    • apply_when
      以下之一:

      当该角色适用于特定文档的用户时,规则表达式的计算结果为 true。

      当该角色适用于特定文档的用户时,规则表达式的计算结果为 true。

    • 读
      以下之一:

      如果角色有权读取文档中的所有字段,则规则表达式的计算结果为 true。如果已启用Device Sync ,请改用 document_filters.read。

      如果角色有权读取文档中的所有字段,则规则表达式的计算结果为 true。如果已启用Device Sync ,请改用 document_filters.read。

    • 写
      以下之一:

      如果角色有权添加、修改或删除文档中的所有字段,则规则表达式的计算结果为 true。如果已启用Device Sync ,请改用 document_filters.write。

      如果角色有权添加、修改或删除文档中的所有字段,则规则表达式的计算结果为 true。如果已启用Device Sync ,请改用 document_filters.write。

    • insert
      以下之一:

      如果角色有权将新文档插入到集合中,则规则表达式的计算结果为 true。

      如果角色有权将新文档插入到集合中,则规则表达式的计算结果为 true。

    • 删除
      以下之一:

      如果角色有权从集合中删除文档,则规则表达式的计算结果为 true。

      如果角色有权从集合中删除文档,则规则表达式的计算结果为 true。

    • 字段 对象

      针对角色的 properties 中未显式配置的任何字段的字段级规则。

    • additional_fields 对象

      针对角色的 properties 中未显式配置的任何字段的字段级规则。

      隐藏 additional_fields 属性 显示 additional_fields 属性 对象
      • 读
        以下之一:

        如果角色可以读取字段的值,则规则表达式的计算结果为 true。

        如果角色可以读取字段的值,则规则表达式的计算结果为 true。

      • 写
        以下之一:

        如果角色可以写入字段的值,则规则表达式的计算结果为 true。

        如果角色可以写入字段的值,则规则表达式的计算结果为 true。

  • 筛选器 大量[对象]

    默认查询筛选条件的列表。

    隐藏筛选器属性 显示筛选器属性 对象
    • _id 字符串

      筛选器的唯一 ObjectId 标识符。

    • 名称 字符串

      筛选器的名称。

    • apply_when
      以下之一:

      如果过滤适用于传入查询,则规则表达式结果为 true。

      如果过滤适用于传入查询,则规则表达式结果为 true。

    • 查询 对象

      在操作运行之前合并到传入查询中的 MongoDB查询对象。

    • 投影 对象

      在操作运行之前合并到传入查询中的 MongoDB投影对象。

      隐藏投影属性 显示投影属性 对象
      • * 数字 additionalProperties

        值为 0 或 1。

响应

  • 204

    已成功修改默认规则。

  • 400 application/json

    Bad Request

    隐藏响应属性 显示响应属性 对象
    • 错误 字符串

      值为 default rule does not exist 或 service default rule id mismatch。

PUT /groups/{groupId}/apps/{appId}/services/{serviceId}/default_rule
curl \
 --request PUT 'https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/services/{serviceId}/default_rule' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --data '{
  "_id": "string",
  "roles": [
    {
      "_id": "string",
      "document_filters": {},
      "name": "string",
      "fields": {},
      "additional_fields": {}
    }
  ],
  "filters": [
    {
      "_id": "string",
      "name": "string",
      "query": {},
      "projection": {
        "additionalProperty1": 0,
        "additionalProperty2": 0
      }
    }
  ]
}'
请求示例
{
  "_id": "string",
  "roles": [
    {
      "_id": "string",
      "document_filters": {},
      "name": "string",
      "fields": {},
      "additional_fields": {}
    }
  ],
  "filters": [
    {
      "_id": "string",
      "name": "string",
      "query": {},
      "projection": {
        "additionalProperty1": 0,
        "additionalProperty2": 0
      }
    }
  ]
}
响应示例 (400)
{
  "error": "default rule does not exist"
}