2015-04-25 2 views
0

Я использую Firebase в приложении для Android и задаю несколько вопросов.Новое для Firebase, у вас есть несколько вопросов о пользовательской аутентификации и хранении данных на Android.

1) Я использую пользовательские auth, и, как говорят документы, для создания маркера на «защищенном сервере», поскольку мой секрет будет раскрыт. Означает ли это, что это не безопасно делать в моем классе активности входа или это безопасно?

2) Я буду отправлять несколько обязательных значений в мою базу данных при регистрации (имя пользователя, пароль и т. Д.). Это будет сделано так ...

var token = tokenGenerator.createToken(
    {uid: "custom:1", username: "string", password: "string"}); 

? Если да, то как я могу безопасно хранить пароли?

3) Я сохраню изображения в своей базе данных, некоторые из которых будут довольно большими (iPhone 6 и Galaxy s6 возьмут некоторые смешные картинки). Смогу ли я просто сохранить байт [], а также другую информацию об изображении (загрузчик, данные и т. Д.)? Или есть лучший способ сделать это?

Извините за длинный пост, просто хочу, чтобы убедиться, что я знаю, что я делаю, прежде чем погрузиться в :)

ответ

0

1) Я буду использовать пользовательские аутентификации и документы говорят, чтобы выполнить маркер поколение на «защищенном сервере», потому что мой секрет будет разоблачен. Does это означает, что это не безопасно делать в моем классе активности входа или это безопасно?

Это означает, что он не может быть сохранен в клиенте, период. Сохранение секретности в приложении Android небезопасно. Генерация токена должна выполняться только на сервере.

Если да, то как я могу безопасно хранить пароли?

Если вы просто ищете для проверки подлинности на основе пароля, попробуйте Firebase-х built-in password authentication, которые устраняют необходимость генерировать маркеры в клиентском приложении.

Будет ли хорошо, чтобы просто хранить байт [], а также другую информацию о образ (загрузчик, данных и т.д.)? Или есть лучший способ сделать это?

Firebase в настоящее время позволяет хранить только строки, булевы и числа, поэтому любые двоичные данные должны быть закодированы в Base64 перед сохранением. Оставайтесь с нами, больше вариантов придет!

Update (20160519): Firebase только что выпустила новую функцию под названием Firebase Storage. Это позволяет загружать изображения и другие данные, отличные от JSON, в специализированную службу хранения. Мы настоятельно рекомендуем использовать это для хранения изображений, вместо того, чтобы хранить их в качестве кодированных данных base64 в базе данных JSON.

Смежные вопросы