Я работаю над html5-приложением, созданным на CouchDB. Я хочу убедиться, что я настроил пользовательские данные наилучшим образом.
Я хотел бы использовать адрес электронной почты в поле "имя" пользовательских документов в базе данных _user. Вот так:
{
"_id": "org.couchdb.user:John",
"_rev": "1-e25df7d685c35dbeb8dabb2453adebe8",
"name": "john@test.com",
"salt": "32ef0f8b1651e0638080afc76d0111d6",
"password_sha": "3023d37579fee19acd01d88c3ae1921a000418d7",
"type": "user",
"roles": [
]
}
Причина, по которой я хотел бы это сделать, заключается в том, что адрес электронной почты - это очень однозначная вещь, которую нужно запрашивать при регистрации, и она гарантированно уникальна среди пользователей. Это требует наименьшего количества мыслей со стороны пользователя, и это очень просто. Хотя есть проблема. Если база данных _user общедоступна, то, насколько я могу судить, адреса электронной почты в пользовательских документах тоже. Как я могу преодолеть это?
Должен ли я сделать базу данных _user частной (доступной для чтения и записи только администраторам?)
Должен ли я хранить пользовательские данные в отдельных пользовательских базах данных, и если я это сделаю, как мои приложения смогут эффективно извлекать эти данные. Если у меня есть несколько данных пользователя, отображаемых на одной странице, с другими данными из других баз данных, разве это не станет действительно неэффективным?
Немного растерялся, хотелось бы узнать, как некоторые люди обращаются с личными данными пользователя.