{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "$id": "https://www.espocrm.com/schema/metadata/aclDefs.json",
    "title": "aclDefs",
    "description": "ACL framework definitions for a scope.",
    "type": "object",
    "properties": {
        "accessCheckerClassName": {
            "description": "An access checker class.",
            "type": "string"
        },
        "portalAccessCheckerClassName": {
            "description": "A portal access checker class.",
            "type": "string"
        },
        "ownershipCheckerClassName": {
            "description": "An ownership access checker class.",
            "type": "string"
        },
        "portalOwnershipCheckerClassName": {
            "description": "A portal ownership access checker class.",
            "type": "string"
        },
        "assignmentCheckerClassName": {
            "description": "assignment checker class.",
            "type": "string"
        },
        "readOwnerUserField": {
            "description": "Indicates what field is used for ownership checking.",
            "type": "string"
        },
        "linkCheckerClassNameMap": {
            "description": "Link checker classes for specific links. Should implement `Espo\\Core\\Acl\\LinkChecker`.",
            "type": "object",
            "additionalProperties": {
                "type": "string"
            }
        },
        "link": {
            "type": "string",
            "description": "A link name to check access to a related record instead of an actual record. Actual if access checker is Espo\\Core\\Acl\\AccessChecker\\AccessCheckers\\Foreign."
        },
        "accountLink": {
            "type": "string",
            "description": "A link with Account that will be used when access control applied for portal users. As of v9.0.0."
        },
        "contactLink": {
            "type": "string",
            "description": "A link with Contact that will be used when access control applied for portal users. As of v9.0.0."
        }
    }
}
