{ "name": "VnUser", "base": "User", "validateUpsert": true, "options": { "mysql": { "table": "account.user" } }, "mixins": { "Loggable": true }, "resetPasswordTokenTTL": "604800", "properties": { "id": { "type": "number", "id": true }, "name": { "type": "string", "required": true }, "username": { "type": "string" }, "roleFk": { "type": "number", "mysql": { "columnName": "role" } }, "nickname": { "type": "string" }, "lang": { "type": "string" }, "active": { "type": "boolean" }, "email": { "type": "string" }, "emailVerified": { "type": "boolean" }, "created": { "type": "date" }, "updated": { "type": "date" }, "image": { "type": "string" }, "hasGrant": { "type": "boolean" }, "passExpired": { "type": "date" }, "twoFactor": { "type": "string" } }, "relations": { "role": { "type": "belongsTo", "model": "VnRole", "foreignKey": "roleFk" }, "roles": { "type": "hasMany", "model": "RoleRole", "foreignKey": "role", "primaryKey": "roleFk" }, "emailUser": { "type": "hasOne", "model": "EmailUser", "foreignKey": "userFk" }, "worker": { "type": "hasOne", "model": "Worker", "foreignKey": "id" }, "userConfig": { "type": "hasOne", "model": "UserConfig", "foreignKey": "userFk" } }, "acls": [ { "property": "signIn", "accessType": "EXECUTE", "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW" }, { "property": "recoverPassword", "accessType": "EXECUTE", "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW" }, { "property": "validateAuth", "accessType": "EXECUTE", "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW" }, { "property": "validateToken", "accessType": "EXECUTE", "principalType": "ROLE", "principalId": "$authenticated", "permission": "ALLOW" }, { "property": "privileges", "accessType": "*", "principalType": "ROLE", "principalId": "$authenticated", "permission": "ALLOW" }, { "property": "renewToken", "accessType": "WRITE", "principalType": "ROLE", "principalId": "$authenticated", "permission": "ALLOW" }, { "property": "shareToken", "accessType": "WRITE", "principalType": "ROLE", "principalId": "$authenticated", "permission": "ALLOW" }, { "property": "acls", "accessType": "*", "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW" } ], "scopes": { "preview": { "fields": [ "id", "name", "username", "roleFk", "nickname", "lang", "active", "created", "updated", "image", "hasGrant", "realm", "email", "emailVerified" ] } } }