RESTベースのシステムでは、リソースIDを「暗号化」するオプションは何ですか?例えばRESTセキュリティリソースを公開するときの良い方法ID
:
/client/2
が
/client/SOMEHASHKEY
でアクセスできるようになり、私は思っています:
1 - リソースのIDを追跡するDBのテーブルを持っており、それは、対応するHASHだとすべてのリクエストでそれを参照してください。これは明らかに実装するのが非常に重いようであり、サーバーの作業をかなり増やします。
2 - それは(明らかに最適ではありませんが、あなたはポイントを得る)、リソースのIDとBASE64のリソースの作成日付に基づいてインスタンスのハッシュを作成し、内部の暗号化アルゴリズムのいくつかの種類を持っている
だからでありますこの種のシナリオの良い習慣?あなたは何をお勧めします ?
多くのおかげ
ハムそう、私はあなたの答えを取って、私の質問にそれを適用しようとすると、ハッシュ、GUIDまたは何かと実際のリソースの間のcorespondanceを追跡するためにテーブルを使用することを意味ですか? – silkAdmin
アプリケーションがリソースをどのように格納するかによって異なります。アプリケーションの内部でリソースがどのように見えるかわかりません。しかし、内部的に整数IDに固執する必要がある場合は、クライアントモデルに別のGUIDプロパティを追加してください。ストレージがSQL DBテーブルの場合は、GUIDをクライアントテーブルの追加フィールドに格納します。 – stmllr
私たちを "良い実践"の質問に戻すには、リソーステーブル自体にUUIDのインデックスを付ける必要があると思いますか? – silkAdmin