私は、開発しようとしている API の認証に頭を悩ませようとしています。
ユーザーがクライアント上のすべてのデータにアクセスできることを念頭に置いて、ユーザーを正常に認証する方法を考えてみた結果、このアイデアにたどり着きました。
Client sends username and password to the server
Server checks if they match a user.
If it does, we create a hashed string with user_id+e-mail+currentTime+salt
and stores this in a database-table with an expiration date.
Server returns hashed string to client
Client sends random request to server including key
Server checks if key is correct and if it's expired
これは安全な方法ですか、それともセキュリティ上の欠陥はありますか?