WebサービスでJSONとして返す特定のクライアントデータを特定しようとしています。私はこれが正しい方法であるとは確信していません、そして、私はいくつかのアドバイスが大好きです。これは、Webサービスがマルチテナントデータベースとやり取りする良い方法ですか?
それが現在動作する方法は次のとおりです。
- データベースのテーブル、彼らが所属する適切なのcompany_idを持つユーザーのために。
- ログインすると、認証サービスはトークンペイロード内のcompany_idを使用してJWTトークンを発行します。
- クライアントはトークンと共にHTTP要求を送信します。その後、サービスがトークンの有効性を確認した後、特定のルートが
WHERE company_id = company_id_in_token
を実行するSQLでデータを返します。
私はに実行している赤いフラグは次のとおりです。トークンペイロード内のユーザデータを持つ
- 。 SSLはこれを否定しますが、私は悪いデザインが心配です。
- にcompany_id列を含めると、すべての単一テーブルがフィルタリングされます。
新しいものをリッピングするようお願いします。
tokeリンクをuser_idに戻す必要がありますか?あなたはcompany_idを取得するためにそれを使用できませんか?すべての単一のテーブルにcompany_idを持つことについては、会社のテーブルに参加するクエリにSQL結合を含めることの問題かもしれません。もしcompany_idなしで結合できれば、そのテーブルに列を含める必要はありません – Dijkgraaf