Я считаю, что это новая функция в Parse-Server.
По умолчанию поле email
класса User
считается защищенным полем, что означает, что для email
по умолчанию установлено значение read: false, write: false
для общего доступа. Но каждое другое поле в классе User
имеет значение read: true, write: false
В Github я видел этот пример:
export type ClassLevelPermissions = {
find?: { [string]: boolean },
count?: { [string]: boolean },
get?: { [string]: boolean },
create?: { [string]: boolean },
update?: { [string]: boolean },
delete?: { [string]: boolean },
addField?: { [string]: boolean },
readUserFields?: string[],
writeUserFields?: string[],
// new feature
protectedFields?: { [string]: boolean }
};
Например, для класса _User, если сервер был инициализирован с помощью userSensitiveFields: ['email', 'sin', 'phone'], это будет эквивалентно:
{
// CLP for the class ... other
protectedFields: { "*": ["email", "sin"] }
};
Теперь, если вы хотите, чтобы роль модератора могла видеть электронную почту пользователя, но не грех и администратор, который может все это прочитать
{
protectedFields: {
"*": ["email", "sin"],
"role:moderator": ["sin"],
"role:admin": []
}
};
Увидев этот пример, я все еще не понял, где именно реализовать protectedFields
. Я реализую это в моем приложении index.js
или main.js
и т. Д.? Может кто-нибудь дать мне пример того, как я могу установить поле: phoneNum
, чтобы иметь protectedField
аналогично email
по умолчанию?