konekto Inc with PHP , MySQL コネクト株式会社 技術情報コンテンツ


[[セキュリティ指針]]

ユーザ認証のべし・べからず

説明

ここでは、一般的なユーザ認証方法のべし・べからずを記述していく。

Cookieにユーザ名、パスワードを保存するべからず
Cookie情報は、ブラウザのバグなどにより外部にもれたり、テキストとして保存されるのでたとえばPCが共有されている場合などには、物理的盗難によりユーザ名パスワードも盗難されてしまう可能性がある。
セッションにログインのフラグを立てる時は注意するべし
セッションにログインしたフラグを立ててユーザアクセスを軽減する仕組みを[[セッションを使おう>セキュリティ指針/セッションを使おう]]で簡単に紹介した。しかし、この仕組みはたとえば、セッションハイジャックが発生した時には、ユーザ名やパスワードなしでログインされてしまうため非常に危険である。セッションにログイン情報を含めるときは、セッションハイジャックに対して、IPアドレスの検証、IDを保持してのの検証などの対策を講じるべきである。
重要な画面の前ではもうもう一度認証を行うべし
セッションハイジャックの被害を最小限にとどめるため、パスワードの変更画面や支払い画面など重要な局面ではもう一度認証をかけさせて、そのユーザが正規のユーザかを確認すること。
パスワードを直接画面に出すべからず
ユーザがパスワードを忘れた時に、任意の質問に回答すれば、パスワードを返すパスワードリマインダという機能がある。これらの機能は、実装に十分注意する必要がある。任意の質問に回答したユーザに対して、パスワードを直接画面に表示せず。すでに登録されているE-Mailや住所に封書にて郵送するなど「偶然答えが当たってしまった」場合にも備える必要がある。

最終更新のRSS