{
  "description": "ClusterMongoDBRole is the Schema for the clustermongodbroles API.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": [
        "string",
        "null"
      ]
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": [
        "string",
        "null"
      ]
    },
    "metadata": {
      "type": [
        "object",
        "null"
      ]
    },
    "spec": {
      "additionalProperties": false,
      "description": "ClusterMongoDBRoleSpec defines the desired state of ClusterMongoDBRole.",
      "properties": {
        "authenticationRestrictions": {
          "items": {
            "additionalProperties": false,
            "properties": {
              "clientSource": {
                "items": {
                  "type": "string"
                },
                "type": [
                  "array",
                  "null"
                ]
              },
              "serverAddress": {
                "items": {
                  "type": "string"
                },
                "type": [
                  "array",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "type": [
            "array",
            "null"
          ]
        },
        "db": {
          "type": "string"
        },
        "privileges": {
          "items": {
            "additionalProperties": false,
            "properties": {
              "actions": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "resource": {
                "additionalProperties": false,
                "properties": {
                  "cluster": {
                    "type": [
                      "boolean",
                      "null"
                    ]
                  },
                  "collection": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "db": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              }
            },
            "required": [
              "actions",
              "resource"
            ],
            "type": "object"
          },
          "type": [
            "array",
            "null"
          ]
        },
        "role": {
          "type": "string"
        },
        "roles": {
          "items": {
            "additionalProperties": false,
            "properties": {
              "db": {
                "type": "string"
              },
              "role": {
                "type": "string"
              }
            },
            "required": [
              "db",
              "role"
            ],
            "type": "object"
          },
          "type": [
            "array",
            "null"
          ]
        }
      },
      "required": [
        "db",
        "role"
      ],
      "type": [
        "object",
        "null"
      ],
      "x-kubernetes-preserve-unknown-fields": true
    }
  },
  "type": "object"
}