私はシティグループハッキング事件 http://www.nytimes.com/2011/06/14/technology/14security.html?_r=2&pagewanted=1&ref=technologyMVC RESTful Urlsをハッキングから保護する方法は?
これは私が考えるようになった上で、最近、興味深い記事を読んで、私は100,000行と私のデータベース内の機密従業員データのテーブルを持っていると言います。このテーブルには、IDというプライマリキーがあります。これはID列です。
従業員はWebポータルにログインでき、その詳細はRESTfulなURL({コントローラ}/{アクション}/{Id})を介して取得されます。/Employee/Details/31
ここで、{Id}パラメータ(たとえばId = 32)と{ の従業員#32のパラメータの{Id}パラメータの置き換えを中止するにはどうすればよいですか。これはCitiGroupで何が起こったのですか?
どうしますか?つまり、ユーザーがWebポータルですでに認証されている場合 他のユーザーのレコードを表示する権限がありません。 Id以外にも のお客様に別の特定の「トークン」を使用する必要がありますか?
私はカスタムメンバーシップAPIを実装しています。これは正常に動作します。つまり、EmployeeがFormsAuthenticationを使用してログインし、FormsAuthentication Ticket(Cookie)が作成されます。次に、コントローラとアクションに権限を与えるために、従業員がロール、IsAuthenticatedなどにあるかどうかを確認します。しかし、これは依然として、私が権限/従業員/詳細にアクセスするために承認され認証されているため、彼に属していないデータへのアクセスを妨げません。(推測された)EmployeeIdを置き換えることができますか? –
また、誰かが自分のURLをスカイプ経由で他の人に送ることができるようにあなたのURLに使用するすべてのIDを暗号化して解読することができます – Omu