デフォルトのロールとフィルターを更新する 非推奨

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

データソースのデフォルトのロールとフィルターを変更します。

path パラメータ

application/ JSON

body 必須

更新されたデフォルト ルール構成オブジェクト。

  • _id string 必須

    デフォルト ルールのユニークな ObjectId 識別子。

  • 役割 array[オブジェクト]

    デフォルトのユーザーロールの順序付き一覧。

    ロール属性を非表示にする ロール属性の表示 オブジェクト
    • _id string

      ロールの一意の ObjectId 識別子。

    • document_filters オブジェクト
      document_filters 属性を非表示 document_filters 属性の表示 オブジェクト
      • 読み取り
        次の 1 つ:

        ロールがドキュメントを読み取り可能な場合に true に評価されるルール式。

        ロールがドキュメントを読み取り可能な場合に true に評価されるルール式。

      • 書込み (write)
        次の 1 つ:

        ロールがドキュメントに書き込み (write)できる場合に true となるルール式。

        ロールがドキュメントに書き込み (write)できる場合に true となるルール式。

    • name string

      ロールの名前。

    • apply_when
      次の 1 つ:

      このロールが特定のドキュメントのユーザーに適用される場合に、true` に評価されるルール式。

      このロールが特定のドキュメントのユーザーに適用される場合に、true` に評価されるルール式。

    • 読み取り
      次の 1 つ:

      ロールにドキュメント内のすべてのフィールドを読み取る許可がある場合に true となるルール式。Device Sync が有効な場合は、document_filters.read を使用してください。

      ロールにドキュメント内のすべてのフィールドを読み取る許可がある場合に true となるルール式。Device Sync が有効な場合は、document_filters.read を使用してください。

    • 書込み (write)
      次の 1 つ:

      ロールにドキュメント内のすべてのフィールドを追加、変更、または除く許可がある場合、true と評価されるルール式。Device Sync が有効な場合は、document_filters.write を使用してください。

      ロールにドキュメント内のすべてのフィールドを追加、変更、または除く許可がある場合、true と評価されるルール式。Device Sync が有効な場合は、document_filters.write を使用してください。

    • insert
      次の 1 つ:

      ルール式は、ロールにコレクションに新しいドキュメントを挿入する権限がある場合、true に評価されます。

      ルール式は、ロールにコレクションに新しいドキュメントを挿入する権限がある場合、true に評価されます。

    • 削除
      次の 1 つ:

      ロールにコレクションからドキュメントを削除する許可がある場合、true に評価されるルール式。

      ロールにコレクションからドキュメントを削除する許可がある場合、true に評価されるルール式。

    • フィールド オブジェクト

      ロールの properties 内で明示的に構成されていないフィールドに対するフィールドレベルのルール。

    • additional_fields オブジェクト

      ロールの properties 内で明示的に構成されていないフィールドに対するフィールドレベルのルール。

      additional_fields 属性を非表示にする additional_fields 属性を表示 オブジェクト
      • 読み取り
        次の 1 つ:

        ロールがフィールドの値を読み取れる場合、true に評価されるルール式。

        ロールがフィールドの値を読み取れる場合、true に評価されるルール式。

      • 書込み (write)
        次の 1 つ:

        ロールがフィールドの値を書き込み (write)できる場合、true に評価されるルール式。

        ロールがフィールドの値を書き込み (write)できる場合、true に評価されるルール式。

  • フィルター array[オブジェクト]

    デフォルトのクエリフィルターの一覧。

    フィルター属性を非表示 フィルター属性の表示 オブジェクト
    • _id string

      フィルターの一意の ObjectId 識別子。

    • name string

      フィルターの名前。

    • apply_when
      次の 1 つ:

      フィルターが受信クエリに適用される場合に true に評価されるルール式。

      フィルターが受信クエリに適用される場合に true に評価されるルール式。

    • クエリ オブジェクト

      操作の実行前に受信クエリに統合される MongoDB クエリ オブジェクト。

    • プロジェクション オブジェクト

      操作が実行される前に入力クエリにマージされる MongoDB プロジェクション オブジェクト。

      プロジェクション属性を非表示 プロジェクション属性の表示 オブジェクト
      • * 数値 additionalProperties

        値は 0 または 1 です。

応答

  • 204

    デフォルト ルールが正常に変更されました。

  • 400 application/ JSON

    無効なリクエスト

    応答属性を非表示 応答属性の表示 オブジェクト
    • エラー string

      値は 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"
}