{ "name": "User", "properties": { "realm": { "type": "string" }, "username": { "type": "string" }, "password": { "type": "string", "required": true }, "email": { "type": "string", "required": true }, "emailVerified": "boolean", "verificationToken": "string" }, "options": { "caseSensitiveEmail": true }, "hidden": ["password", "verificationToken"], "acls": [ { "principalType": "ROLE", "principalId": "$everyone", "permission": "DENY" }, { "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW", "property": "create" }, { "principalType": "ROLE", "principalId": "$owner", "permission": "ALLOW", "property": "deleteById" }, { "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW", "property": "login" }, { "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW", "property": "logout" }, { "principalType": "ROLE", "principalId": "$owner", "permission": "ALLOW", "property": "findById" }, { "principalType": "ROLE", "principalId": "$owner", "permission": "ALLOW", "property": "patchAttributes" }, { "principalType": "ROLE", "principalId": "$owner", "permission": "ALLOW", "property": "replaceById" }, { "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW", "property": "confirm" }, { "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW", "property": "resetPassword", "accessType": "EXECUTE" }, { "principalType": "ROLE", "principalId": "$authenticated", "permission": "ALLOW", "property": "changePassword", "accessType": "EXECUTE" } ], "relations": { "accessTokens": { "type": "hasMany", "model": "AccessToken", "foreignKey": "userId", "options": { "disableInclude": true } } } }